Hej
Mam pare pytan, ponizej podaje program ktory wlasnie pisze i mam pare pytan:
1. co trzeba zrobic zeby program nie przerywal po wykonaniu ktoregos case?
2. w tym programie (choc wiem ze sa bledy dotyczace wczytywania danych) nei dziala porowananie w funkcji testowanie, nie przyrownuje ich do siebie, choc rozpoznaje ktora jest wieksza, co mam zrobic zeby to dzialalo? Tylko nie mowcie ze musze wszystko od nowa:) I jeszcze jedno, chce zeby to byl czysty c++
Oto moje wypociny
#include <iostream.h>
#include <conio.h>
#include <fstream.h>
#include <stdlib.h>
#include <stdio.h>
void wczytywanie(char b);
void testowanie (char );
int il,il2;
main()
{clrscr();
int i;
char b;
cout<<"\n**************************************************************************
******\n"
"Witamy w programie edukacyjnym TESCIK \n"
"Wybierz co chcesz zrobic: \n\n"
"1) Wczytywanie pytan testowych (tylko dla nauczycieli!!!)-\t1 \n"
"2) Przeprowadzenie testu-t2 \n"
"3) Wyniki przeprowadzonych testow\n"
"4) Koniec-t4 \n"
"\n Wpisz wybrany numer: \n";
cin >>i;
switch(i)
{case 1:
wczytywanie(b); break;
case 2 :
testowanie(b);break;
case 4:
exit(1);
default:continue;
}
}
void wczytywanie(char )
{int il2,i,j,e;
char a[20],b[20],c[20],B[20];
cout<<"Ile pytan chcesz wprowadzic?";
cin>>il;
cout<<"Ile bedzie podpowiedzi?";
cin>>il2;
ofstream plik;
plik.open("test2");
plik<<il<<endl;
plik<<il2<<endl;
for(i=0;i<il;i=i+1)
{
cout<<"podaj pytanie: " <<i+1<<endl;
cin>>a;
plik<<a<<endl;
cout<<"podaj "<<il2<< "odpowiedzi:" <<endl;
for(j=10;j<il2+10;j=j+1)
{ cout<<itoa(j,B,16)<<" " ;
cin>>b;
plik<<b<<endl;}
cout<< "Podaj ktora odpowiedz jest prawidlowa:"<<endl;
cin>>c;
plik<<c<<endl;
}
plik.close();
}
void testowanie (char )
{int licz2,licz,il,i,j,e;
char z[20],odp[20],B[20],buf[20],buf2[20],odp2[20];
int p;
p=0;
cout<<"Witaj !!! Przeczytaj uwaznie pytanie, wybierz odpowiedz\n";
ifstream plik;
plik.open("test2");
plik.getline(buf,20);
cout<<buf;
licz=atoi(buf);
plik.getline(buf,20);
cout<<buf;
licz2=atoi(buf);
for(i=0;i<licz;i=i+1)
{
cout<<"Pytanie: " <<i+1<<endl;
plik.getline(buf,20);
cout<<buf;
for(j=0;j<licz2;j++)
{plik.getline(buf,20);
cout<<buf;
}
cout<<"Podaj odpowiedz: ";
cin>>odp;
plik.get(buf,2);
cout<<endl<<buf<<endl<<odp<<endl;
if(odp==buf) p=p+1;
cout<<"punkty:" <<p<<endl;
}
plik.close();
}