Остаток от деления - C (СИ) (77627)
Формулировка задачи:
//--------------------------------------------------------------------------- #include <vcl.h> #include<conio.h> #include<stdio.h> #include<math.h> #include<iostream.h> //--------------------------------------------------------------------------- float middle (float,float,float); float ost (float,float,float); int main(void) { float e; float f; float g; float x; float op; int m; float r; bool xxx; int o; int k; cout<<"Enter type of numbers dec (1) or fraction (0)\n"; cin>>xxx; o=xxx; if( xxx!=0 ) { cout<<"Enter e,f,g\n"; cin>>e>>f>>g; op=ost(e,f,g); k=middle(e,f,g); cout<<k<<"- middle\n"; cout<<op<<"-%\n";} else { cout<<"Enter e,f,g\n"; cin>>e>>f>>g; x=middle(e,f,g); cout<<x<<"- middle\n"; cout<<fmod(ost(e,f,g),3)<<"-%\n"; } getch(); }
Решение задачи: «Остаток от деления»
#include <iostream> #include <cmath> using namespace std; template <class T> T middle(T a, T b, T c) { return (a + b + c)/3; } template <class T> T ostatok(T a, T b, T c) { double ipart; T ost, sum = (a + b + c); if(static_cast <T> (0.1) == 0) ost = (static_cast <int> (sum - 3*middle(a,b,c)) ) % 3; else ost = static_cast <T> (modf(sum/3,&ipart)); return ost; } int main() { int iA, iB, iC; double dA, dB, dC; cout<<"Enter integers\n"; cout<<"a = ";cin>>iA; cout<<"b = ";cin>>iB; cout<<"c = ";cin>>iC; cout<<"Sr arifm : "<<middle (iA, iB, iC)<<endl; cout<<"Ostatok : "<<ostatok(iA, iB, iC)<<endl; cout<<"Enter doubles\n"; cout<<"a = ";cin>>dA; cout<<"b = ";cin>>dB; cout<<"c = ";cin>>dC; cout<<"Sr arifm : "<<middle (dA, dB, dC)<<endl; cout<<"Ostatok : "<<ostatok(dA, dB, dC)<<endl; system("pause"); return 0; }
Объяснение кода листинга программы
В этом коде представлены две функции: middle
и ostatok
. Функция middle
вычисляет среднее значение трех чисел, а функция ostatok
вычисляет остаток от деления суммы трех чисел на 3.
В функции ostatok
сначала определяется переменная sum
, которая содержит сумму трех чисел. Затем проверяется, является ли сумма чисел целым числом. Если да, то в переменную ost
записывается остаток от деления sum
на 3. В противном случае, используется функция modf
для получения дробной части от sum/3
, а затем полученное значение приводится к типу T
.
В функции main
пользователю предлагается ввести три целых числа, а затем три числа с плавающей точкой. После ввода чисел выводятся результаты вычисления среднего значения и остатка от деления на 3 для обоих наборов чисел.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д