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

Программа для решения хим. уравнений - C++

Восстановить пароль Регистрация
 
mrUMBRELLA
 Аватар для mrUMBRELLA
0 / 0 / 0
Регистрация: 15.02.2014
Сообщений: 13
15.02.2014, 01:15     Программа для решения хим. уравнений #1
Здравствуйте форумчане! Мне нужна ваша помощь!!! Я хочу сделать программу для решения ХИМИЧЕСКИХ УРАВНЕНИЙ. Как только я начал столкнулся с проблемой! Когда я в самой программе ввожу уравнение H2+O2 то на экран выводится 2H2+O2=2H2O (то есть ответ), а когда ввожу С+О2 то должен получить ответ C+O2=CO2, но я получаю 2H2+O2=2H2O опять!!! пожалуйста помогите мне с этим разобратьсяне критикуйте сильно я только учусь! В общем вот КОД:
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
using namespace std;
int main(int argc, char* argv[])
{
signed char a='H2+O2',b='C+O2';
cout<<"ВВЕДИТЕ УРАВНЕНИЕ:"<<endl;
cin >>a, b;
if(a){cout<<"2H2+O2=2H2O"<<endl;}
else if(b){cout<<"C+O2=CO2"<<endl;}
system ("pause");
return 0;
}
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rikimaru2013
C++ Game Dev
 Аватар для rikimaru2013
2133 / 966 / 222
Регистрация: 30.11.2013
Сообщений: 3,231
15.02.2014, 01:43     Программа для решения хим. уравнений #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#include <iostream>
#include <locale.h>
#include <string>
 
using namespace std;
int main(int argc, char* argv[])
{
    setlocale(LC_ALL,"Russian"); 
    
    cout<<"ВВЕДИТЕ УРАВНЕНИЕ:"<<endl;
    string a;
 
    while(true) // вечный цикл - можно всё спрашивать и спрашивать
    {
        cin >> a;
        system("cls"); // очистка экрана
        cout << "Правильный ответ: " << endl;
        if(a == "H2+O2") cout << "2H2+O2=2H2O" << endl;
        if(a == "C+O2") cout << "C+O2=CO2" << endl;
 
        cout << endl << endl << "Еще уравнения? Вводите:" << endl;
    }
 
    system ("pause");
    return 0;
}
mrUMBRELLA
 Аватар для mrUMBRELLA
0 / 0 / 0
Регистрация: 15.02.2014
Сообщений: 13
15.02.2014, 02:20  [ТС]     Программа для решения хим. уравнений #3
Спасибо! А как сделать так, чтобы программа выводила на экран "ОТВЕТ НЕ ИЗВЕСТЕН" в случае, если в цикл не внесено такое уравнение?
fingolfin_
15.02.2014, 02:58
  #4

Не по теме:

Кажется, у вас получается не программа для решения уравнений, а база формул

rikimaru2013
C++ Game Dev
 Аватар для rikimaru2013
2133 / 966 / 222
Регистрация: 30.11.2013
Сообщений: 3,231
15.02.2014, 03:07     Программа для решения хим. уравнений #5
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
31
32
33
#include <iostream>
#include <locale.h>
#include <string>
 
using namespace std;
int main(int argc, char* argv[])
{
    setlocale(LC_ALL,"Russian"); 
    
    cout<<"ВВЕДИТЕ УРАВНЕНИЕ:"<<endl;
    string a;
    bool flag = 0;
    while(true) // вечный цикл - можно всё спрашивать и спрашивать
    {
        flag = 0;
        cin >> a;
        system("cls"); // очистка экрана
        cout << "Правильный ответ: " << endl;
        if(a == "H2+O2") {cout << "2H2+O2=2H2O" << endl;flag=1;}
        if(a == "C+O2") {cout << "C+O2=CO2" << endl;flag=1;}
 
        if(!flag)
            {
                system("cls");
                cout << "Вы ввели не верный запрос. Попробуйте еще раз:" << endl;
            }
        else
            cout << endl << endl << "Еще уравнения? Вводите:" << endl;
    }
 
    system ("pause");
    return 0;
}
mrUMBRELLA
 Аватар для mrUMBRELLA
0 / 0 / 0
Регистрация: 15.02.2014
Сообщений: 13
15.02.2014, 13:12  [ТС]     Программа для решения хим. уравнений #6
да я так и задумал
Yandex
Объявления
15.02.2014, 13:12     Программа для решения хим. уравнений
Ответ Создать тему
Опции темы

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