Ввести одномерный массив A , вывести его. Найти произведение
10-11 класс
|
элементов стоящих слева и справа от минимального элемента массива.
Разделить на найденное произведение минимум и максимум. Изменённый
массив вывести.
Вот начало:
program ABC;
const Nmass=100;
var A:array[1..Nmass] of integer;
N,i,k,max,min: byte;
buf:integer;
begin
cls;
//ручной ввод массива
writeLn('Введите число элементов в массиве A');
readLn(N);
writeLn('Вводим элементы массива A:');
for i:=1 to N do
begin
write('A[',i,']=');
readLn(A[i]);
end;
//вывод массива до измененния
writeLn('Исходный массив A:');
for i:=1 to N do
write(A[i]:5);
writeLn;
Прежде всего, тот код, который вы написали - чепуха! Сейчас вам напишу свой. Еще, на счет последнего, мы массив ни коем образом не изменяем, просто выполняем операции с его элементами, поэтому, вывести "измененный" массив не получится.
var mass: Array[0..10] of integer;
max_elem, min_elem, i, min_index, multOnTheLeft, multOnTheRight: integer;
begin
for i := 1 to 10 do begin
write('Введите ', i, ' элемент массива: ' );
readln(mass[i]);
end;
for i := 1 to 10 do writeln('mass[', i, '] = ', mass[i]);
min_elem := mass[1];
for i := 1 to 10 do begin
if mass[i] < min_elem then begin
min_elem := mass[i];
min_index := i;
end;
end;
writeln('Минимальное значение: ', min_elem, ', индекс элемента: ', min_index );
multOnTheLeft := 1; multOnTheRight := 1;
for i := 1 to min_index do multOnTheLeft := multOnTheLeft * mass[i];
for i := min_index to 10 do multOnTheRight := multOnTheRight * mass[i];
writeln('Произведение слева: ', multOnTheLeft, ', справа: ', multOnTheRight);
end.
Единственное, что я не понимаю, так это "разделить на произведение минимум и максимум". Объясните ясней
Другие вопросы из категории
заштрихованной области на плоскости
Получить прямой, обратный и дополнительный код числа х = –11D.
1) 96
2) 0,114
3) 34.675
4) 27
5) 0.65
6) 0.25
Читайте также
порядке все элементы между максимальным и предпоследним
отрицательным элементом.
Помогите, не могу найти предпоследний элемент в массиве, и как их переставить?
порядке все элементы между максимальным и предпоследним
отрицательным элементом.
Помогите, не могу найти предпоследний элемент в массиве
элементов.Найти колличество четных положительных элементов.
3)Дан массив из 6 элементов.Найти произвдение положительных из них.
расположенных между максимальным и минимальным элементами.
Дан одномерный массив, состоящий из вещественных элементов. Найти произведение элементов массива, расположенных между максимальным по модулю и минимальным по модулю элементами
ну или исправьте мое пжл
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]<min then begin
max:=mas[i];
b:=i;
end;
end;
close(f1);
assign (g, 'output.txt');
rewrite (g);
p:=1;
if b<c then I:=b+1 and c-1
else for I:=c+1 to b-1 do p:=p*mas[i];
if (n<3) or (b+1=c) or (c+1=b) then writeln(g,'0.00') else write(p:3:3) ;
close (g);
end.
элементов.Вывести на экран исходную таблицу и резултат программы.
Найти произведения элементов массива А. удовлетворяющих условию:
c<=A[i]<=d.