Форум программистов, компьютерный форум CyberForum.ru

Вывести на экран таблицу истинности - C++

Восстановить пароль Регистрация
 
andrey1307
0 / 0 / 0
Регистрация: 16.01.2013
Сообщений: 7
25.01.2013, 17:33     Вывести на экран таблицу истинности #1
Для !(A && B) вывести на экран таблицу истинности с использованием функции
string Res(bool, bool). Таблица должна выводится в главной функции main()
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
25.01.2013, 18:51     Вывести на экран таблицу истинности #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <sstream>
#include <string>
 
std::string Res(bool a, bool b) {
 
    std::ostringstream stream;
    
    stream.setf(std::ios::boolalpha);    
    stream << "!(" << a << " && " << b << ") = " << !(a && b);           
    
    return stream.str();
}
 
int main() {        
    
    std::cout << Res(true, true) << std::endl;
    std::cout << Res(true, false) << std::endl;
    std::cout << Res(false, false) << std::endl;
    std::cout << Res(false, true) << std::endl;    
}
andrey1307
0 / 0 / 0
Регистрация: 16.01.2013
Сообщений: 7
25.01.2013, 19:05  [ТС]     Вывести на экран таблицу истинности #3
Спасибо. Но как то сложновато, можно ли попроще??????

мы только начали язык изучать
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
25.01.2013, 20:17     Вывести на экран таблицу истинности #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <iostream>
#include <string>
 
using namespace std;
 
// перевод значения true/false в строку
string ToStr(bool x) {
 
    if(x == true)
        return "true";
    
    return "false";
}
 
string Res(bool a, bool b) {
             
    // оператором '+' соединяем несколько строк в одну 
    string str = "!(" + ToStr(a) + " && " + ToStr(b) + ") = " + ToStr(!(a && b));
    
    // возвращаем результат
    return str;
}
 
int main() {        
    
    cout << Res(true, true) << endl;
    cout << Res(true, false) << endl;
    cout << Res(false, false) << endl;
    cout << Res(false, true) << endl;
}
Yandex
Объявления
25.01.2013, 20:17     Вывести на экран таблицу истинности
Ответ Создать тему
Опции темы

Текущее время: 07:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru