Hej, czy spotkał się ktoś z odpowiedziami do ćwiczeń z Symfonii Standard Jerzego Grębosza ?
Chce sprawdzić czy dobrze je rozwiązuję, a nie mogę z niczym porównać.
to może daj tu zadania to sie je rozwiaże a potem sie gdzieś zapisze :)
a tak na marginesie rozwiązań jednego zadania może być parę
pozdro ;)
jak masz wątpliwości to zamieść na forum rozwiązanie i spytaj się czy dobrze kombinujesz ;)
no to pierwsze:
Napisz program, w którym będą trzy funkcje wywoływane bez żadnych argumentów, a zwracające rezultat typu int.
Zdefiniuj dodatkową funkcję F, do której wyślesz adres jeden z tych funkcji. Funkcja F ma wywoływać funkcję, której adres otrzyma, a następnie jej rezultat zwrócić jako swój rezultat.
#include <iostream>
using namespace std;
int fun1;
int fun2;
int fun3;
int F;
int main()
{
int *wsk1 = fun1;
int *wsk2 = fun2;
int *wsk3 = fun3;
F (*wsk1)
}
int F(int *wfun)
{
*wfun();
return *wfun;
}
Bzdury chyba straszne :)
napisz deklarację funkcji, która przyjmuje dwa argumenty. Pierwszy będący C-Stringiem, a drugi wskaźnikiem do tablicy wskaźników do obiektów typu double. Funkcja ma zwracać wskaźnik typu void
void* fun(const char *wsk, double *(*wsk2)[] )
Poprawnie:
Napisz program, w którym będą trzy funkcje wywoływane bez żadnych argumentów, a zwracające rezultat typu int.
Zdefiniuj dodatkową funkcję F, do której wyślesz adres jeden z tych funkcji. Funkcja F ma wywoływać funkcję, której adres otrzyma, a następnie jej rezultat zwrócić jako swój rezultat.
#include <iostream>
//--------------------------------
using namespace std;
//--------------------------------
int fun1() ;
int fun2() ;
int fun3() ;
int F( int(*w)() ) ;
//--------------------------------
int main() {
int liczba ;
int opcja ;
cout << "1. fun1" << endl;
cout << "2. fun2" << endl;
cout << "3. fun3" << endl;
cout << "Ktora funkcja? : " ;
cin >> opcja;
switch(opcja) {
case 1:
liczba = F(fun1) ;
cout << "Zwrocony rezultat: " << liczba << endl;
break;
case 2:
liczba = F(fun2) ;
cout << "Zwrocony rezultat: " << liczba << endl;
break;
case 3:
liczba = F(fun3) ;
cout << "Zwrocony rezultat: " << liczba << endl;
break;
default:
cout << "Nie ma takiej opcji" << endl;
break;
}
system("PAUSE");
return EXIT_SUCCESS ;
}
//--------------------------------
int fun1() {
cout << "funkcja fun1() " << endl;
return 1;
}
int fun2() {
cout << "funkcja fun2() " << endl;
return 2;
}
int fun3() {
cout << "funkcja fun3() " << endl;
return 3;
}
int F( int(*w)() ) {
return w() ;
}
wow, jak ja ten egzamin napisze :) mając tak niską wiedzę :/