Page 4 - Informatyka na czasie. Wiesz, umiesz, zdasz. Podręcznik klasa 2 i 3
P. 4
Rozdział 2. Rozwiązywanie problemów z wykorzystaniem struktur danych
Krok 4
Aktualne wartości minimum i maksimum program powinien także pamiętać w tych systemach
liczbowych, w których zostały zapisane w pliku.
Odpowiedź: Kod źródłowy programu może wyglądać następująco:
1. #include <iostream>
2. #include <fstream>
3. #include <string>
4.
5. using namespace std;
6.
7. int ToDec(int p, string s)
8. // wartość dziesiętna liczby s, zapisanej w systemie o podstawie p
9. {
10. int w=0;
11. for (int i=0;i<s.size();i++) w=w*p+s[i]-48;
12. return w;
13. }
14.
15. int main()
16. {
17. int d,mini,maks,p,pmini,pmaks;
18. string s,smini,smaks;
19. ifstream we("WUZ2_zad1_liczby.txt");
20. we>>p>>s;
21. mini=ToDec(p,s); maks=mini;
22. smini=s; smaks=s; pmini=p; pmaks=p;
23. for (int i=1;i<100;i++)
24. {
25. we>>p>>s;
26. d=ToDec(p,s);
27. if (d<mini)
28. {
29. mini=d; smini=s; pmini=p;
30. }
31. else if (d>maks)
32. {
33. maks=d; smaks=s; pmaks=p;
34. }
35. }
36. we.close();
37. cout<<"Minimum: "<<pmini<<" "<<smini<<endl;
38. cout<<"Maksimum: "<<pmaks<<" "<<smaks;
39. return 0;
40. }
228