projekt z języka programowania C++, Pomoce naukowe, studia, informatyka


Projekt z języka programowania

obiektowego

VISUAL C++

Treść zadania:

Napisz program umożliwiający wprowadzenie określonej liczby studentów (nazwisko, imię, rok studiów, ocena zaliczeniowa). W kolejnym okienku powinny pojawiać się dane o wprowadzonej grupie: średnia ocen grupy, dane studenta o najwyższej ocenie zaliczenia (nazwisko, imię, ocena), dane studenta o najniższej ocenie.

CZĘŚĆ PRAKTYCZNA:

1.Utwórz projekt MFC AppWizard(exe) z wykorzystaniem aplikacji typu Dialog nadając mu nazwę Zadanie7.

2.Zaprojektuj formatkę jak na poniższym rysunku:

0x01 graphic

3.Ustaw własności obiektów zamieszczonych na formatce tak jak podaje tabela:

Nazwa obiektu

Identyfikator

Caption

Nazwa zmiennej

Type

Kategoria

List Box

IDC_LISTA

m_lista

CListBox

Control

Static Text

IDC_STATIC

Nowe Nazwisko

Static Text

IDC_STATIC

Nowe Imie

Static Text

IDC_STATIC

Nowy Rok

Static Text

IDC_STATIC

Nowa Ocena

Group Box

IDC_STATIC

Nowe dane

Edit Box

IDC_NAZWISKO

m_nazwisko

CString

Value

Edit Box

IDC_IMIE

m_imie

CString

Value

Edit Box

IDC_ROK

m_rok

DWORD

Value

Edit Box

IDC_OCENA

m_ocena

Float

Value

Button

IDC_DODAJ

Dodaj

Static Text

IDC_STATIC

Średnia grupy

Static Text

IDC_STATIC

Najniższa ocena

Static Text

IDC_STATIC

Najwyższa ocena

Edit Box

IDC_SREDNIA

Styles/Read-only

m_srednia

String

Value

Edit Box

IDC_NAJNIZSZA

Styles/Read-only

m_najnizsza

String

Value

Edit Box

IDC_NAJWYZSZA

Styles/Read-only

m_najwyzsza

String

Value

Static Text

IDC_STATIC

Nazwisko

Static Text

IDC_STATIC

Imie

Static Text

IDC_STATIC

Rok

Static Text

IDC_STATIC

Ocena

Static Text

IDC_STATICNAZWISKO

<brak>, Styles/Sunken

m_staticnazwisko

CString

Value

Static Text

IDC_STATICIMIE

<brak>, Styles/Sunken

m_staticimie

CString

Value

Static Text

IDC_STATICROK

<brak>, Styles/Sunken

m_staticrok

CString

Value

Static Text

IDC_STATICOCENA

<brak>, Styles/Sunken

m_staticocena

CString

Value

Static Text

IDC_LICZBA

Styles/Read-only

m_liczbaogolem

DWORD

Value

Static Text

IDC_STATIC

Liczba studentów

Button

IDC_KONIEC

Koniec

4. Do przechowywania danych o studentach będziemy wykorzystywać 4 tablice - Nazwisko, Imie, Rok i Ocena.

W tym celu w obszarze roboczym przechodzimy do zakładki Class View - prawym klawiszem podświetlamy CZadanie7Dlg i wybieramy Add Member Variable. Jako Typ podajemy CStringArray, a jako nazwę kolejno:

nazwiska

oceny

rok

imiona.

We wszystkich tablicach zaznaczamy public.

5. Następnie dodajemy kolejne zmienne (analogicznie jak w punkcie 4.)

public:

float sumaocen;

DWORD iloscstud;

float najwyzsza;

float najnizsza;

6. Na formatce uruchamiamy Class Wizard'a i nastepnie przechodzimy do funkcji OnInitDialog dopisując w niej następujący kod

nazwiska.SetSize(100);

imiona.SetSize(100);

rok.SetSize(100);

oceny.SetSize(100);

Kod ten wyznacza rozmiar tablic, w których program będzie przechowywać dane o studentach. Następnie pod wyżej wpisanym kodem wpisujemy:

najnizsza=6;

najwyzsza=0;

iloscstud=0;

sumaocen=0;

m_liczbaogolem=0;

UpdateData(FALSE);

Zapis ten przyporządkowuje zmiennym wartości, które będą umożliwiały:

7. Kolejno wchodzimy na formatkę i klikając dwa razy przycisk DODAJ wchodzimy do kodu źródłowego i wpisujemy:

void CZadanie7Dlg::OnDodaj()

{

CString lan, ocenastring; Deklaracja pomocniczych zmiennych

UpdateData();

nazwiska[iloscstud]=m_nazwisko; Pobranie danych studenta z pól EditBoxa

imiona[iloscstud]=m_imie; i umieszczenie ich w tablicach

lan.Format("%d",m_rok);

rok[iloscstud]=lan;

ocenastring.Format("%1.1f",m_ocena);

oceny[iloscstud]=ocenastring;

iloscstud++;

sumaocen+=m_ocena; obliczanie sredniej ocen grupy

float srednia=sumaocen;

srednia/=iloscstud;

lan.Format("%1.2f",srednia);

m_srednia=lan;

m_liczbaogolem=iloscstud; przekazanie obliczonej sredniej i liczby studentów

UpdateData(FALSE); do pól edycyjnych

lan=m_nazwisko;

lan+=" "; Połączenie imienia z nazwiskiem i wyświetlenie w liście

lan+=m_imie;

m_lista.AddString(lan);

lan+="(";

lan+=ocenastring; dodanie do imienia i nazwiska oceny

lan+=")";

if(m_ocena<najnizsza)

{

najnizsza=m_ocena; szukanie najwyzszej i najnizszej oceny studenta

m_najnizsza=lan;

UpdateData(FALSE);

}

if(m_ocena>najwyzsza)

{

najwyzsza=m_ocena;

m_najwyzsza=lan;

UpdateData(FALSE);

}

}

8. Aby móc uzyskiwać informacje o studencie zaznaczonym w liście wykonujemy następujące czynności:

Wchodzimy do Class Wizard, do zakładki Message Maps, w polu objectIDs podświetlamy IDC_LISTA, następnie w polu Messages wybieramy funkcję LBN_SELCHANGE i naciskamy Add Function. Następnie w polu Member Function pojawia się dodana funkcja, klikając na niej dwa razy przechodzimy do kodu i wpisujemy:

void CZadanie7Dlg::OnSelchangeLista()

{

DWORD d; deklaracja pomocniczej zmiennej

d=m_lista.GetCurSel(); odczytanie numeru zaznaczonej pozycji w liscie

podstawienie go pod d

m_staticnazwisko=nazwiska[d];

m_staticimie=imiona[d]; pobranie danych o zaznaczonym studencie i

m_staticrok=rok[d]; wyswietlenie ich w obiektach StaticText

m_staticocena=oceny[d];

UpdateData(FALSE);

}

9. Ostatnim krokiem jest uaktywnienie przycisku Koniec. W tym celu klikamy dwa razy na znajdujący się na formatce przycisk koniec i wpisujemy kod:

void CZadanie7Dlg::OnKoniec()

{

OnOK();

}



Wyszukiwarka

Podobne podstrony:
etapy projektowania bazy danych, Pomoce naukowe, studia, informatyka
projekt i wykonanie sieci komputerowej - cz.2, Pomoce naukowe, studia, informatyka
projekt i wykonanie sieci komputerowej - cz.1, Pomoce naukowe, studia, informatyka
algorytm projektowania systemu informatycznego, Pomoce naukowe, studia, informatyka
programowanie w Visual Basic, Pomoce naukowe, studia, informatyka
projekt wdrożenia komputerowego wspomagania zarządzania, Pomoce naukowe, studia, informatyka
hakerzy jako subkultura, Pomoce naukowe, studia, informatyka
język XML, Pomoce naukowe, studia, informatyka
język SQL, Pomoce naukowe, studia, informatyka
wykłady - cz. 1, Pomoce naukowe, studia, informatyka
wirtualni operatorzy komórkowi, Pomoce naukowe, studia, informatyka
automatyka - ściąga, Pomoce naukowe, studia, informatyka
polityka bezpieczeństwa w sieciach komputerowych, Pomoce naukowe, studia, informatyka
analiza systemu informatycznego biura pośrednictwa pracy, Pomoce naukowe, studia, informatyka
skróty klawiaturowe, Pomoce naukowe, studia, informatyka
system zarządzania bazami danych access, Pomoce naukowe, studia, informatyka
system Netware, Pomoce naukowe, studia, informatyka
wykłady - cz. 6, Pomoce naukowe, studia, informatyka
systemy informatyczne w ekonomii, Pomoce naukowe, studia, informatyka

więcej podobnych podstron