Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Problem z wyświetleniem danych, z zastosowaniem pętli for i tablicy z metodami

Ostatnio zmodyfikowano 2012-05-16 22:24
Autor Wiadomość
Matej
Temat założony przez niniejszego użytkownika
Problem z wyświetleniem danych, z zastosowaniem pętli for i tablicy z metodami
» 2012-05-16 18:38:41
Piszę program który spyta o ilość słuchaczy, następnie poprosi o wprowadzenie danych i na koniec je wyświetli.
Musi zawierać tablice i metody (to warunek konieczny - program zaliczeniowy). Udało mi się napisać do momentu wprowadzania danych - przy pomocy pętli for, problem jest gdy tworzę taką samą pętlę aby te dane wyświetlić.

C/C++
#include <cstdlib>
#include <iostream>

using namespace std;
short int iluSluchaczy;

class listaSluchaczy
{
public:
    string imie;
    string nazwisko;
    short int ID;
   
    void wprowadzanie();
    void wyswietlanie();
};

int main()
{
    cout << "Ilu sluchaczy chcesz wprowadzic?" << endl;
    cin >> iluSluchaczy;
   
    int tablica[ iluSluchaczy ];
   
    for( int i = 0; i < iluSluchaczy; i++ )
    {
       
        listaSluchaczy sluchacz[ i + 1 ];
        cout << "Wprowadzanie sluchacza nr " << i + 1 << endl;
        sluchacz[ i ].wprowadzanie();
    };
   
    getchar();
    return 0;
};


void listaSluchaczy::wprowadzanie()
{
    cout << "Podaj imie" << endl;
    cin >> imie;
    getchar();
    cout << "Podaj nazwisko" << endl;
    cin >> nazwisko;
    getchar();
};

void listaSluchaczy::wyswietlanie()
{
    cout << "Imie: " << imie << endl;
    cout << "Nazwisko: " << nazwisko << endl;
};
P-56792
SeaMonster131
» 2012-05-16 19:59:23
C/C++
listaSluchaczy sluchacz[ i + 1 ];
to wywaliłbym przez pętle for - jedynie "i+1" zamieniłbym na ilość słuchaczy - (żeby mieć do tego dostęp nie tylko w pętli), a następnie zrobiłbym taką samą pętlę for, tylko wyświetlałbym dane informacje (np
sluchacz[ i ].imie
).

// Aa, jeżeli to ma być za pomocą metody w klasie, no to
C/C++
for( int i = 0; i < iluSluchaczy; i++ )
     sluchacz[ i ].wyswietlanie();


:)
P-56803
Matej
Temat założony przez niniejszego użytkownika
» 2012-05-16 22:10:58
Tak już próbowałem. Po wpisaniu kodu który podałeś, aby wyświetlić słuchaczy, kompilator wyrzuca mi komunikat: 'sluchacz' undeclared.

Po dodaniu do pętli listaSluchaczy sluchacz[i+1]; i objęciu instrukcji pętli for w nawiasy klamrowe program się kompiluje ale działa nieprawidłowo. To znaczy wprowadza poprawnie ale nic nie wyświetla. Pętla do wprowadzania jest prawidłowa ale druga do wyświetlania nie.
P-56823
Admixior
» 2012-05-16 22:21:36
C/C++
cin >> iluSluchaczy;
int tablica[ iluSluchaczy ];

Czy Dev potrafi sobie to zmienić na dynamiczną tablicę?
Może lepiej użyj operatora new...
P-56828
SeaMonster131
» 2012-05-16 22:24:31
Po wpisaniu kodu który podałeś, aby wyświetlić słuchaczy, kompilator wyrzuca mi komunikat: 'sluchacz' undeclared.

C/C++
listaSluchaczy sluchacz[ i + 1 ];
to wywaliłbym przez pętle for - jedynie "i+1" zamieniłbym na ilość słuchaczy - (żeby mieć do tego dostęp nie tylko w pętli) [...]
P-56831
« 1 »
  Strona 1 z 1