Паскаль помогите пжл!!!!!!     Дан одномерный массив, состоящий из  вещественных элементов. Найти произведение элементов массива, расположенных между максимальным и минимальным элементами.       Дан одномерный массив, состоящий...

Паскаль помогите пжл!!!!!!     Дан одномерный массив, состоящий из  вещественных элементов. Найти произведение элементов массива, расположенных между максимальным и минимальным элементами.       Дан одномерный массив, состоящий из  вещественных элементов. Найти произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами     ну или исправьте мое пжл   program fgf; var mas:array[1..100] of real; max,min:real; i,n,c,b:shortint; p:real; f1,g:text; begin; assign (f1, 'input.txt'); reset (f1); readln (f1, n); for i:=1 to N do read (mas[i]); max:=mas[i]; for i:=2 to N do begin if mas[i]>max then begin max:=mas[i]; c:=i; end; end; min:=mas[1]; for i:=2 to N do begin if mas[i]
Гость
Ответ(ы) на вопрос:
Гость
// operations_array.cpp: определяет точку входа для консольного приложения. #include "stdafx.h" #include #include using namespace std; int main(int argc, char* argv[]) { srand(time(NULL)); setlocale(LC_ALL, "rus"); int length_array; cout << "Укажите количество элементов массива: "; cin >> length_array; float *arrayPtr = new float [length_array]; // одномерный динамический массив // заполняем одномерный массив случайными числами for (int counter = 0; counter < length_array; counter++) { arrayPtr[counter] = - 5.00 + ((rand() % 101) / 10.0); // генерируем случайные числа [-5, 5] cout << arrayPtr[counter] << " "; // вывод сгенерированного числа } cout << endl; float min = arrayPtr[0]; // инициализируем первым элементом массива int number_min = 0; // номер минимального элемента for (int counter = 0; counter < length_array; counter++) { if (min > arrayPtr[counter]) { min = arrayPtr[counter]; // минимальный элемент number_min = counter; // номер минимального элемента } } cout << "номер минимального элемента = " << (number_min + 1) << endl; // номер минимального элемента double product = 1; for (int counter = 0; counter < length_array; counter++) { if (arrayPtr[counter] < 0) // находим первое отрицательное число { counter++; // переключаемся на следующий элемент while (arrayPtr[counter] > 0) // пока не нашли второе отрицательное число { product *= arrayPtr[counter]; // накапливаем произведение элементов counter++; } break; // выход из цикла for } } cout << "произведение = " << product << endl; float *relocation_arrayPtr = new float [length_array]; // одномерный динамический массив для перестановок int index = 0; // индекс массива перестановок // заполняем массив элементами, модуль которых не превышает 1 for (int counter = 0; counter < length_array; counter++) { if (abs(arrayPtr[counter]) <= 1) { relocation_arrayPtr[index] = arrayPtr[counter]; index++; } } // заполняем массив элементами, модуль которых больше 1 for (int counter = 0; counter < length_array; counter++) { if (abs(arrayPtr[counter]) > 1) { relocation_arrayPtr[index] = arrayPtr[counter]; index++; } } // напечатать преобразованный массив cout << "\nПреобразованный массив:\n"; for (int counter = 0; counter < length_array; counter++) { cout << relocation_arrayPtr[counter] << " "; } cout << endl; // высвобождение памяти отводимой под одномерный динамический массив: delete [] arrayPtr; delete [] relocation_arrayPtr; system("pause"); return 0;         
Не нашли ответ?
Ответить на вопрос
Похожие вопросы