"Составить программу вычисляющую в зависимости от введенного признака n площадь одного тела: n=1 - прямоугольника; n=2 - круга; n=3 - треугольника. В соотвествии с введенным признаком выполнить ввод необходимых исходных данных в диалоговом режиме."
и как составить программу для вычисления и для вычисления по формулам, какие нужны команды
Другие языки программирования и технологии
Как написать программу решения следующей задачи?
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <locale.h>
#include <windows.h>
#define PI 3.141592
void circleArea(float);
void triangleArea(float, float, float);
void rectangleArea(float, float);
void menu();
void dataInput(int);
void error(int);
void main()
{
setlocale(LC_CTYPE, "Russian_Russia.1251");
menu();
}
void circleArea(float r)
{
printf("\n Площадь круга = %.4f", PI * r * r);
return;
}
void triangleArea(float a, float b, float c)
{
if (a + b > c && a + c > b && b + c > a)
{
float p = (abs(a) + abs(b) + abs(c)) / 2;
float area = sqrt(p * (p - a) * (p - b) * (p - c));
printf("\n Площадь треугольника = %.4f", area);
return;
}
else error(2);
}
void rectangleArea(float a, float b)
{
printf("\n Площадь прямоугольника = %.4f", abs(a * b));
return;
}
void menu()
{
do
{
system("cls");
int choice;
printf("\n Для вычисления площади круга введите 1:");
printf("\n Для вычисления площади треугольника введите 2:");
printf("\n Для вычисления площади прямоуголника введите 3:");
printf("\n Для выхода из программы введите 0: ");
scanf("%d", &choice);
switch ( choice )
{
case 0: exit(0);
case 1:
case 2:
case 3: dataInput(choice); break;
default: error(1);
}
}
while (1);
}
void dataInput(int call)
{
switch ( call )
{
float a, b, c;
case 1:
printf("\n Дан круг с радиусом r.");
printf("\n Введите радиус круга: ");
scanf("%f", &a);
circleArea(a);
break;
case 2:
printf("\n Дан треугольник со сторонами a, b, c.");
printf("\n Введите сторону a: ");
scanf("%f", &a);
printf("\n Введите сторону b: ");
scanf("%f", &b);
printf("\n Введите сторону c: ");
scanf("%f", &c);
triangleArea(a, b, c);
break;
case 3:
printf("\n Дан прямоугольник со сторонами a, b.");
printf("\n Введите сторону a: ");
scanf("%f", &a);
printf("\n Введите сторону b: ");
scanf("%f", &b);
rectangleArea(a, b);
break;
}
getch();
menu();
}
void error(int err)
{
switch( err )
{
case 1:
printf("\n Ошибка при выборе пункта меню! \a");
Sleep(1000);
printf("\n Повторите, пожалуйста, ввод. ");
Sleep(1500);
menu();
break;
case 2:
printf("\n Треугольник не существует! \a");
Sleep(2000);
menu();
break;
}
}
#include <conio.h>
#include <math.h>
#include <locale.h>
#include <windows.h>
#define PI 3.141592
void circleArea(float);
void triangleArea(float, float, float);
void rectangleArea(float, float);
void menu();
void dataInput(int);
void error(int);
void main()
{
setlocale(LC_CTYPE, "Russian_Russia.1251");
menu();
}
void circleArea(float r)
{
printf("\n Площадь круга = %.4f", PI * r * r);
return;
}
void triangleArea(float a, float b, float c)
{
if (a + b > c && a + c > b && b + c > a)
{
float p = (abs(a) + abs(b) + abs(c)) / 2;
float area = sqrt(p * (p - a) * (p - b) * (p - c));
printf("\n Площадь треугольника = %.4f", area);
return;
}
else error(2);
}
void rectangleArea(float a, float b)
{
printf("\n Площадь прямоугольника = %.4f", abs(a * b));
return;
}
void menu()
{
do
{
system("cls");
int choice;
printf("\n Для вычисления площади круга введите 1:");
printf("\n Для вычисления площади треугольника введите 2:");
printf("\n Для вычисления площади прямоуголника введите 3:");
printf("\n Для выхода из программы введите 0: ");
scanf("%d", &choice);
switch ( choice )
{
case 0: exit(0);
case 1:
case 2:
case 3: dataInput(choice); break;
default: error(1);
}
}
while (1);
}
void dataInput(int call)
{
switch ( call )
{
float a, b, c;
case 1:
printf("\n Дан круг с радиусом r.");
printf("\n Введите радиус круга: ");
scanf("%f", &a);
circleArea(a);
break;
case 2:
printf("\n Дан треугольник со сторонами a, b, c.");
printf("\n Введите сторону a: ");
scanf("%f", &a);
printf("\n Введите сторону b: ");
scanf("%f", &b);
printf("\n Введите сторону c: ");
scanf("%f", &c);
triangleArea(a, b, c);
break;
case 3:
printf("\n Дан прямоугольник со сторонами a, b.");
printf("\n Введите сторону a: ");
scanf("%f", &a);
printf("\n Введите сторону b: ");
scanf("%f", &b);
rectangleArea(a, b);
break;
}
getch();
menu();
}
void error(int err)
{
switch( err )
{
case 1:
printf("\n Ошибка при выборе пункта меню! \a");
Sleep(1000);
printf("\n Повторите, пожалуйста, ввод. ");
Sleep(1500);
menu();
break;
case 2:
printf("\n Треугольник не существует! \a");
Sleep(2000);
menu();
break;
}
}
молча
Язык? Если это делфи - то без проблем.
Похожие вопросы
- Составьте программу решения старинной задачи: сколько можно купить быков (бык стоит 10рубей) , коров (по 5 рублей) и тел
- Пожалуйста, помогите составить программы для решения следующих задач.
- Разработайте программу для решения следующей задачи: «Купили 100 голов скота на 100 рублей. Бык стоит 10 рублей, корова
- Помогите пожалуйста составить программы для следующих задач:
- Помогите решить задачу)) Написать программу решения математического ребуса: VOLVO+FIAT=MOTOR.
- Как написать программу для этой задачи (СИ)?
- Программисты! Помогите пожалуйста! Нужно на паскале написать код к следующей задаче: Даны натуральные числа a, b, c
- Напишите программу на языке Паскаль для решения задачи:
- Написать программу работы с одномерным массивом из 15 вещественных элементов для решения задач:
- Запутываюсь при решении логических задач, написании программ