Вычисление периметра прямоугольника - C (СИ)
Формулировка задачи:
Есле можете помогите пожалуйста записать код!!!
Напишите программу для вычисления периметра прямоугольник. Создать функцию nacitaj, который извлекает и возвращает аргументы, используя два вещественных числа. Затем создайте obsah и obvod(функции цепи), которая в качестве аргументов приведены длины сторон и вернуть содержимое, соответственно. Периметр прямоугольника. В главной функции вызова программа для извлечения загруженных размеры прямоугольника. Когда вы вводите символ s пользователем программы вычисляет и выводит содержимое, и когда вы вводите символ o по периметру прямоугольника. Десятичная часть результата (например, если результат является целым числом, десятичная точность не отображается) - использовать %g формат. Расчет содержания, соответственно. Схема вызова указатель на функцию. ВВОД: 3.5 4.75 s ВЫВОД: 16.625
Если сможете помогите пожалуйста!!!
Решение задачи: «Вычисление периметра прямоугольника»
#include <stdio.h> void nacitaj(double *a, double *b) { printf("\nEnter side a:"); scanf("%lf",a); printf("\nEnter side b:"); scanf("%lf",b); } double obsah(double a,double b) { return a*b; } double obvod(double a,double b) { return 2*(a+b); } int main() { double a,b; char c; void (*f1)(double*, double*); double (*f2)(double, double); double (*f3)(double, double); f1=nacitaj; f2=obsah; f3=obvod; f1(&a,&b); scanf("%s",&c); if(c=='s') printf("%g",f2(a,b)); if(c=='o') printf("%g",f3(a,b)); return 0; }
Объяснение кода листинга программы
- #include
— подключает файл стандартного ввода/вывода, который содержит функции для работы с консолью - void nacitaj(double a, double b) — функция для ввода данных, принимает два указателя на переменные типа double, которые будут содержать стороны прямоугольника
- double obsah(double a,double b) — функция для вычисления площади прямоугольника, принимает два аргумента типа double — стороны прямоугольника
- double obvod(double a,double b) — функция для вычисления периметра прямоугольника, принимает два аргумента типа double — стороны прямоугольника
- int main() — точка входа в программу, содержит основную логику программы
- double a,b; — объявление переменных для хранения введенных пользователем данных
- char c; — объявление переменной для хранения символа, введенного пользователем
- *void (f1)(double, double);** — объявление указателя на функцию типа void, которая принимает два указателя на переменные типа double
- *double (f2)(double, double);** — объявление указателя на функцию типа double, которая принимает два аргумента типа double
- *double (f3)(double, double);** — объявление указателя на функцию типа double, которая принимает два аргумента типа double
- f1=nacitaj; — присваивание указателю f1 адреса функции nacitaj
- f2=obsah; — присваивание указателю f2 адреса функции obsah
- f3=obvod; — присваивание указателю f3 адреса функции obvod
- f1(&a,&b); — вызов функции nacitaj с передачей указателей на переменные a и b
- scanf(
%s
,&c); — ввод символа с клавиатуры и сохранение его в переменной c - if(c=='s') — проверка значения переменной c на равенство 's'
- printf(
%g
,f2(a,b)); — вывод значения функции f2(a,b) с использованием формата %g для вывода числа с плавающей точкой - if(c=='o') — проверка значения переменной c на равенство 'o'
- printf(
%g
,f3(a,b)); — вывод значения функции f3(a,b) с использованием формата %g для вывода числа с плавающей точкой - return 0; — завершение работы программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д