Программа запускается,но работает не корректно - C (СИ)
Формулировка задачи:
Программа запускается,но работает не корректно,где ошибка?
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(int argc, char *argv[]) {
int x, y, z; float a;
printf("\nInput x,y,z\n");
scanf( "%d", &x);
scanf( "%d", &y);
scanf( "%d", &z);
if (x||y||z % 2 == 0) //Г·ГҐГІГ*îå
{ a=pow((x*y*x), 1/3);
}
else if (x||y||z% 2 == 1) //Г*ГҐГ·ГҐГІГ*îå
{ a=(x+y+z)/3;
}
else
{ a=x*y*z;
}
printf(" \na(%d) = %d ",x,y,z, a);
system("PAUSE");
return 0;
}Решение задачи: «Программа запускается,но работает не корректно»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(int argc, char *argv[]) {
int x, y, z; float a;
printf("\nInput x,y,z\n");
scanf( "%d", &x);
scanf( "%d", &y);
scanf( "%d", &z);
if (x%2==0 && y%2==0 && z % 2 == 0)
{ a=pow((x*y*x), 1/3);
}
else if ((x*y*z)% 2 ) //
{ a=(x+y+z)/3;
}
else
{ a=x*y*z;
}
printf(" \na = %f " a);
system("PAUSE");
return 0;
}
Объяснение кода листинга программы
- Подключение необходимых библиотек:
, , - Объявление переменных: int x, y, z; float a;
- Вывод сообщения с просьбой ввести значения x, y, z
- Считывание значений переменных x, y, z с помощью функции scanf()
- Проверка на четность каждого из введенных значений
- Если все значения четные, то вычисление значения переменной a по формуле (xyx)^(1/3)
- Если любое из значений нечетное, то вычисление значения переменной a по формуле (x+y+z)/3
- Если все значения нечетные, то вычисление значения переменной a по формуле xyz
- Вывод значения переменной a
- Ожидание нажатия клавиши для завершения работы программы с помощью функции system(
PAUSE) - Возврат 0, что означает успешный конец работы программы