Написать программу с использованием перегруженной функции calc (выполняет 4 простейших арифметических действий для 2 целочисленных значений типа float и double)
Не имею понятия, что есть перегруженная функция, в С++ ничего не понимаю, а надо крайне-крайне срочно... Спасайте учебу, избавляйте от армейских сапогов
Функция должна выполнять вычисления определенного типа, то есть, к примеру, либо сложение, либо вычитание на выбор. На вид должно выйти примерно так:
#include <stdio.h>
float calc(float , float , char );
double calc(double, double, char );
float calc(float a, float b, char op)
{
printf("\nFloat \n");
switch(op)
{
case '+': return a+b;
case '-': return a-b;
case '/': return a/b;
case '*': return a*b;
}
return 0;
}
double calc(double a, double b, char op)
{
printf("\nDouble \n");
switch(op)
{case '+': return a+b;
case '-': return a-b;
case '/': return a/b;
case '*': return a*b;
}
return 0;
}
int floatit()
{
float a,b;
char op;
printf("Vvedite pervoe chislo (Float):");
scanf("%f", &a);
printf("\nVVedite vtoroe chislo (Float):");
scanf("%f", &b);
printf("\nVvedite operator:");
scanf("%s", &op);
printf("%f\n", calc(a,b,op));
return 0;
}
int
doubleit()
{
double a,b;
char op;
printf("Vvedite pervoe chislo (Double):");
scanf("%f", &a);
printf("\nVVedite vtoroe chislo (Double):");
scanf("%f", &b);
printf("\nVvedite operator:");
scanf("%s", &op);
printf("%f\n", calc(a,b,op));
return 0;
}
int main()
{
int menu;
printf("\nViberete neobhodimiy tip dannih:\n 1 - float\n 2 - double\nmenu>");
scanf("%i", &menu);
switch(menu)
{
case 1: floatit();
break;
case 2: doubleit();
}
return 0;
}
Тебе "добрые" люди не подсказали, что
1) твоя программа к С++ не имеет никакого отношения, а написана на чистом С?
2) при работе с данными типа double форматная строка меняется на "%lf" вместо "%f" (если уж использовать scanf/printf)?
3) деление на 0 надо ловить, и предотвращать?
Нет, к сожалению, ничего не сказали... Насчет деления на ноль - надо наверное отлавливать. Сделать условие, если введен 0, то попросить пользователя ввести другое число