Перевести программу вычисления выражения с С++ - C (СИ)
Формулировка задачи:
Эту программу нужно перевести из С++ в Си, помогите пожалуйста.
Листинг программы
- #include<iostream>
- #include<conio.h>
- #include<cmath>
- #include<cstdlib>
- #include<cstring>
- using namespace std;
- int f();
- int main(void)
- {
- setlocale(LC_ALL,"Russian");
- float q;
- float a,b,c;
- cout<<"Условия пользования!"<<'\n';
- cout<< '\n' <<"Не вводите буквы!"<<'\n';
- cout<< '\n' <<"Не вводите символы, кроме цифр!"<<'\n';
- cout<< '\n' <<"Дроби вводить нельзя!"<<'\n';
- cout<< '\n' <<"Убедительная просьба, выполнять условия пользования "<<'\n' <<"во избежания некорректной роботы програмы ."<<'\n'<<'\n';
- while(1){
- cout<<'\n' << '\n' <<"Выражения для вычисления: (a*a + b*b) / (b*b + 5^c) * b! = q"<<'\n';
- cout<< '\n' <<"Введите переменную a: ";
- a = f();
- cout<< '\n' <<"Введите переменную b: ";
- b = f();
- cout<< '\n' << "Введите переменную c: ";
- c = f();
- if(b*b + c == 0)
- {
- cout<<'\n' << b*b << "+" <<"(" << pow((double)5,(double)c) << ")" << " = 0" << '\n';
- cout<<'\n' << b << "*" << "(" << b << "-" << 1 << ")" << " = 0" << '\n';
- cout<<'\n' << "Простите на нуль делить нельзя!";
- getch();
- exit(0);
- }
- q = (a*a + b*b) / (b*b + pow((double)5,(double)c));
- cout<<'\n' <<"Решение: "<<'\n';
- cout<<'\n' << "(" << a*a << "+"<< b*b <<")" <<"/"<< "(" << b*b << "+" << pow((double)5,(double)c) << ")" << "*" <<"(" << b << "*" << "(" << b << "-" << 1 << ")"<<")"<< "=" << q <<'\n';
- cout<<'\n' <<"Спасибо что использовали это приложения!"<<'\n';
- }
- getch();
- }
- int f()
- {
- char f[20];
- int c, k=0;
- start2:
- cin >> f;
- for(register int i = 0;i<strlen(f);i++)
- {
- k++;
- }
- for(register int i = 0;i<strlen(f);i++)
- {
- if(f[i] == '0' || f[i]=='1' || f[i]=='2' || f[i]=='3'|| f[i]=='4'||f[i]=='5'||f[i]=='6'||f[i]=='7'||f[i]=='8'||f[i]=='9' || f[i]=='-')
- {}
- else if(f[i] == '.' || f[i]==',')
- {
- cout<< '\n' << "Просите вы ввели символ " << "'"<< f[i] << "'" <<"а его вводить нельзя!"<<'\n';
- cout<< '\n' << "Повторите ввод переменной: ";
- goto start2;
- }
- else if(k>20)
- {
- cout << "Превышен лимит возможных символов"<<'\n';
- cout << " Попробуйте еще раз "<<'\n';
- goto start2;
- }
- else
- {
- cout << "Некорректные данные ";
- cout << " Попробуйте еще раз "<<'\n';
- goto start2;
- }
- }
- c = atoi(f);
- return c;
- }
Решение задачи: «Перевести программу вычисления выражения с С++»
textual
Листинг программы
- for(register int i
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д