Сформировать две новые последовательности x и y в соответствии с правилом - C (СИ)
Формулировка задачи:
Препод сказала, что молодец, написал, но надо теперь сделать ввод/обработку массива через функцию. Помогите.
"Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом
xi = ( ai+ bi ) / 2,
yi = ( bi+ci ) / 2,
i = 1, 2, …, n"
#include <stdio.h> #define n 3 void scan(double* ,int* ,int* ,int); int main() { int a[n],b[n],c[n]; double x[n],y[n]; int i; for(i=0;i<n;i++) { printf("vvedite a,b,c\n"); scanf("%d%d%d",&a[i],&b[i],&c[i]); } printf("x"); scan(x,a,b,n); printf("y"); scan(y,b,c,n); return 0; } void scan(double* y, int* b, int* c, int n) { int i; for(i=0;i<n;i++) { y[i]=sqrt(fabs(b[i]*c[i])); } for(i=0;i<n;i++) printf(" %lf ",y[i]); printf("\n"); }
Решение задачи: «Сформировать две новые последовательности x и y в соответствии с правилом»
textual
Листинг программы
#include <iostream> #include<stdio.h> using namespace std; int main() { int n; float a[100],b[100],c[100],x[100],y[100]; cout<<"Input n"; cin>>n; void vivod(float mas[], int n); void vvod2(float mas[],int n); void vvod(float mas[],int n); void calc(float m1[],float m2[],float mrez[],int n);//это прототипы ф-ии vvod(a,n);vvod(b,n);vvod(c,n); calc(a,b,x,n); calc(b,c,y,n); vivod(x,n); vivod(y,n); return 0; } #include<stdio.h> void vvod(float mas[],int n) { int i; for(i=0; i<n; i++) { printf("mas[%d]=", i); scanf("%f", &mas[i]); } } void vivod(float mas[], int n) { int i; for(i=0; i<n; i++) printf("mas[%d]=%7.3f\n",i,mas[i]); } void calc(float m1[],float m2[],float mrez[],int n) { int i; for(i=0; i<n; i++) mrez[i]=((m1[i]+m2[i])/2); } }
Объяснение кода листинга программы
- Включаются необходимые заголовочные файлы: iostream, stdlib.h, и свой собственный файл.
- Объявляются функции: main(), vvod(), vivod(), calc(), и инициализируются массивы a, b, c, x, y, m1, m2, mrez, с переменными n, а также переменная-счетчик i.
- В функции main() считывается значение переменной n.
- Вызывается функция vvod(), чтобы ввести значения массивов a, b, c.
- Вызывается функция calc(), чтобы произвести вычисления для массивов a, b, и результат сохранить в массив x.
- Вызывается функция calc(), чтобы произвести вычисления для массивов b, c, и результат сохранить в массив y.
- Вызывается функция vivod(), чтобы вывести значения массивов x и y.
- Завершается функция main() и программа.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д