написать код на C#
Трёхчлен a + bx + сy от двух переменных x и y однозначно определяется коэффициентами a, b и c. Написать программу, которая по заданным a, b и c выводит соответствующий трёхчлен, записанный с использованием алгебраических соглашений:
коэффициент при члене, содержащем переменную, опускается, если его модуль равен единице;
член, коэффициент при котором равен нулю, опускается (кроме случая, когда все коэффициенты равны нулю, тогда трехчлен состоит из одной цифры 0);
знак "+" опускается, если он предшествует отрицательному коэффициенту;
знак "+" опускается, если он стоит в начале выражения (так называемый унарный плюс);
знак умножения между коэффициентом и переменной опускается.
При этом запрещено менять местами члены.
Входные данные
Во входном файле INPUT.TXT через пробел записаны целые коэффициенты a, b и с, каждое из которых не превосходит 30000 по абсолютной величине.
Выходные данные
Выходной файл OUTPUT.TXT должен содержать трехчлен, записанный с использованием алгебраических соглашений.
1) Если изначальный массив НЕ дан, т.е необходимо его заполнить случайными числами
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
void GetMaxAndMinIndex(int* data,int* MaxIndex,int* MinIndex) {
for (int i = 0; i < 200; ++i) {
if (data[i] > data[i + 1]) {
*MaxIndex = i;
}
if (data[i] < data[i + 1]) {
*MinIndex = i;
}
}
}
void SearchSrAr(int* data,int* MaxIndex,int* MinIndex) {
int tmpI = 0;
int TmpNum = 0;
for (int i = *MinIndex; i < *MaxIndex; ++i) {
TmpNum = TmpNum + data[i];
tmpI++;
}
double output = TmpNum / tmpI;
cout <<"Ваше число "<< output;
}
int main() {
setlocale(LC_ALL, "Russian");
int* data = new int[200];
int MaxIndex = 0, MinIndex = 100;
srand(time(NULL));
for (int i = 0; i < 200;++i) {
data[i] = rand() % 100;
}
GetMaxAndMinIndex(data, &MaxIndex, &MinIndex);
SearchSrAr(data, &MaxIndex, &MinIndex);
delete[] data;
}
И если этот массив и его размер нам известны
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
void GetMaxAndMinIndex(int* data,int* MaxIndex,int * n,int* MinIndex) {
for (int i = 0; i < *n; ++i) {
if (data[i] > data[i + 1]) {
*MaxIndex = i;
}
if (data[i] < data[i + 1]) {
*MinIndex = i;
}
}
}
void SearchSrAr(int* data,int* MaxIndex,int* MinIndex) {
int tmpI = 0;
int TmpNum = 0;
for (int i = *MinIndex; i < *MaxIndex; ++i) {
TmpNum = TmpNum + data[i];
tmpI++;
}
double output = TmpNum / tmpI;
cout <<"Ваше число "<< output;
}
int main() {
setlocale(LC_ALL, "Russian");
int n;
cout << "Введите количество чисел в массиве " << endl;
cin >> n;
int* data = new int[n];
int MaxIndex = 0, MinIndex = 100;
cout << "Введите ваш массив " << endl;
for (int i = 0; i < n; ++i) {
cin >> data[i];
}
GetMaxAndMinIndex(data, &MaxIndex,&n, &MinIndex);
SearchSrAr(data, &MaxIndex, &MinIndex);
delete[] data;
}
Объяснение:
Код на с++