Описать функцию, выполняющую правый циклический сдвиг - C (СИ)
Формулировка задачи:
1.Составить функцию нахождения площади параллелограмма по диагоналям и углу между ними. С помощью данной функции вычислить площадь для N параллелограммов.
2.Описать функцию ShiftRight3(A, B, C), выполняющую правый циклический сдвиг: значение A переходит в B, значение B — в C, значение C — в A (A, B, C — вещественные параметры, являющиеся одновременно входными и выходными). С помощью этой процедуры выполнить правый циклический сдвиг для двух данных наборов из трех чисел: (A1, B1, C1) и (A2, B2, C2).
Прошу вашей помощи Заранее спасибо.
Решение задачи: «Описать функцию, выполняющую правый циклический сдвиг»
textual
Листинг программы
#include <stdio.h>
float pl(float a, float b, float c)
{
float s;
s = 0.5 * a * b * sin(c * 3.14159 / 180);
return s;
}
int main()
{
setlocale(0,"");
int N;
float d1, d2, dd, S;
printf("Ââåäèòå äèГ*ГЈГ®Г*Г*ëè, óãîë(Гў ГЈГ°Г*äóñГ*Гµ) ìåæäó Г*èìè ГЁ êîë-ГўГ® ГЇГ*Г°-îâ: ");
scanf("%f %f %f %d", &d1, &d2, &dd, &N);
S = pl(d1, d2, dd) * N;
printf("ÏëîùГ*äü ГЇГ*Г°Г*ëëåëîãðГ*ììГ* Г°Г*ГўГ*Г*: %.2f", S);
_getch();
//return 0;
}
Объяснение кода листинга программы
- Объявление функции
pl, которая принимает три аргумента типаfloatи выполняет вычисления с использованием этих аргументов. - В функции
mainобъявлены переменныеN,d1,d2,ddиS. - Выводится приглашение для ввода значений переменных
d1,d2,ddиN. - С помощью функции
scanfвводятся значения переменныхd1,d2,ddиN. - Вычисляется значение переменной
Sпутем вызова функцииplи умножения ее результата на значение переменнойN. - Выводится результат вычисления переменной
S. - Программа ожидает нажатия клавиши для продолжения работы.