Zaawansowane CPP/Ćwiczenia 9: Szablony wyrażeń: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Nie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 34: | Linia 34: | ||
powinno wygenerować: | powinno wygenerować: | ||
< | <nowiki>-------------- | ||
-------------- | |||
| 0 | 0 || 1 | | | 0 | 0 || 1 | | ||
| 0 | 1 || 1 | | | 0 | 1 || 1 | | ||
| 1 | 0 || 0 | | | 1 | 0 || 0 | | ||
| 1 | 1 || 1 | | | 1 | 1 || 1 | | ||
-------------- | --------------</nowiki> | ||
</ | |||
a | a |
Wersja z 13:20, 21 wrz 2006
Ćwiczenie 1
Zaimplementuj szablony funkcji table1, table2 i table3, generujące tabele prawdy dla jednej, dwu lub trzech zmiennych logicznych. Argumentem tych funkcji ma być funkcja przyjmująca, w zależności od funkcji, od 1 do 3 argumentów typu bool, np.:
bool And(bool q,bool r) {return q && r;} table2(And2) ;
powinno wygenerować :
-------------- | 0 | 0 || 0 | | 0 | 1 || 0 | | 1 | 0 || 0 | | 1 | 1 || 1 | --------------
Podobnie dla table1 i table3.
Rozwiązanie
Ćwiczenie 2
{{{3}}}
Rozwiązanie
Ćwiczenie 3
Zaimplementuj szablon funkcji, który będzie przyjmował jako jeden z parametrów szablonu ilość zmiennych logicznych i będzie łączył działanie funkcji table1, table2 i table3. Np.:
table<2>(And);
powinno być równoważne wywołaniu:
table2(And);
Podpowiedź
Rozwiązanie