~nezabudka~
Ученик
- Регистрация
- 26 Май 2011
- Сообщения
- 3
- Реакции
- 0
- Баллы
- 0
Задача на массивы, Pascal. Помогите найти ошибку
Дан вектор А[1:15].
1) найти минимальный элемент
2) найти произведение минимального элемента и суммы элементов 2ектора, больших - 2
3) найти произведение среднеарифметического значения вектора на максимальный элемент вектора.
4) найти номер максимального элемента из первых 10 элементов вектора .
В четвертом задании что-то не так :tehnari_ru_117:
PROGRAM VECTOR;
USES WINCRT;
CONST N=15;B=2;
VAR
A:ARRAY[1..15] OF INTEGER;
MIN,MAX,I,S1,S2,P1,MAXX: INTEGER;
SRA,P2:REAL;
BEGIN
RANDOMIZE;
WRITELN(' ЗАДАН ВЕКТОР А:');
FOR I:=1 TO N DO
A:=RANDOM(30)-10;
BEGIN
FOR I:=1 TO N DO
WRITE(A:4);
WRITELN;
WRITELN;
END;
MIN:=A[1];
BEGIN
FOR I:=2 TO N DO
IF A<MIN
THEN MIN:=A;
WRITELN(' 1) МИНИМАЛЬНЫЙ ЭЛЕМЕНТ ВЕКТОРА РАВЕН:',MIN:4);
WRITELN;
END;
S1:=0;
P1:=1;
BEGIN
FOR I:=1 TO N DO
IF A>B
THEN
S1:=S1+A;
P1:=S1*MIN;
WRITELN(' 2) СУММА ЭЛЕМЕНТОВ >2:',S1:4);
WRITELN;
WRITELN(' ПРОИЗВЕДЕНИЕ МИНИМАЛЬНОГО ЭЛЕМЕНТА И');
WRITELN(' СУММЫ ЭЛЕМЕНТОВ >2 РАВНО:',P1:8);
WRITELN;
END;
BEGIN
S2:=0;
P2:=1;
SRA:=0;
MAX:=A[1];
BEGIN
FOR I:=2 TO N DO
IF A>MAX
THEN MAX:=A;
END;
FOR I:=1 TO N DO
S2:=S2+A;
SRA:=S2/N;
P2:=SRA*MAX;
WRITELN(' 3) МАКСИМАЛЬНЫЙ ЭЛЕМЕНТ ВЕКТОРА:',MAX:4);
WRITELN;
WRITELN(' СРЕДНЕАРИФМЕТИЧЕСКОЕ ЗНАЧЕНИЕ ВЕКТОРА:',SRA:8:2);
WRITELN;
WRITELN(' ПРОИЗВЕДЕНИЕ СРЕДНЕАРИФМЕТИЧЕСКОГО ЗНАЧЕНИЯ ВЕКТОРА');
WRITELN(' НА МАКСИМАЛЬНЫЙ ЭЛЕМЕНТ РАВНО:',P2:8:2);
WRITELN;
END;
MAX:=A[1];
MAXX:=1;
BEGIN
FOR I:=1 TO 10 DO
IF A>MAX
THEN
BEGIN
MAX:=A;
MAXX:=I;
WRITELN(' 4) МАКСИМАЛЬНЫЙ ЭЛЕМЕНТ ИЗ ПЕРВЫХ 10-И РАВЕН:',MAX:4,', ЕГО НОМЕР:',MAXX:4);
END;
END;
END.
Дан вектор А[1:15].
1) найти минимальный элемент
2) найти произведение минимального элемента и суммы элементов 2ектора, больших - 2
3) найти произведение среднеарифметического значения вектора на максимальный элемент вектора.
4) найти номер максимального элемента из первых 10 элементов вектора .
В четвертом задании что-то не так :tehnari_ru_117:
PROGRAM VECTOR;
USES WINCRT;
CONST N=15;B=2;
VAR
A:ARRAY[1..15] OF INTEGER;
MIN,MAX,I,S1,S2,P1,MAXX: INTEGER;
SRA,P2:REAL;
BEGIN
RANDOMIZE;
WRITELN(' ЗАДАН ВЕКТОР А:');
FOR I:=1 TO N DO
A:=RANDOM(30)-10;
BEGIN
FOR I:=1 TO N DO
WRITE(A:4);
WRITELN;
WRITELN;
END;
MIN:=A[1];
BEGIN
FOR I:=2 TO N DO
IF A<MIN
THEN MIN:=A;
WRITELN(' 1) МИНИМАЛЬНЫЙ ЭЛЕМЕНТ ВЕКТОРА РАВЕН:',MIN:4);
WRITELN;
END;
S1:=0;
P1:=1;
BEGIN
FOR I:=1 TO N DO
IF A>B
THEN
S1:=S1+A;
P1:=S1*MIN;
WRITELN(' 2) СУММА ЭЛЕМЕНТОВ >2:',S1:4);
WRITELN;
WRITELN(' ПРОИЗВЕДЕНИЕ МИНИМАЛЬНОГО ЭЛЕМЕНТА И');
WRITELN(' СУММЫ ЭЛЕМЕНТОВ >2 РАВНО:',P1:8);
WRITELN;
END;
BEGIN
S2:=0;
P2:=1;
SRA:=0;
MAX:=A[1];
BEGIN
FOR I:=2 TO N DO
IF A>MAX
THEN MAX:=A;
END;
FOR I:=1 TO N DO
S2:=S2+A;
SRA:=S2/N;
P2:=SRA*MAX;
WRITELN(' 3) МАКСИМАЛЬНЫЙ ЭЛЕМЕНТ ВЕКТОРА:',MAX:4);
WRITELN;
WRITELN(' СРЕДНЕАРИФМЕТИЧЕСКОЕ ЗНАЧЕНИЕ ВЕКТОРА:',SRA:8:2);
WRITELN;
WRITELN(' ПРОИЗВЕДЕНИЕ СРЕДНЕАРИФМЕТИЧЕСКОГО ЗНАЧЕНИЯ ВЕКТОРА');
WRITELN(' НА МАКСИМАЛЬНЫЙ ЭЛЕМЕНТ РАВНО:',P2:8:2);
WRITELN;
END;
MAX:=A[1];
MAXX:=1;
BEGIN
FOR I:=1 TO 10 DO
IF A>MAX
THEN
BEGIN
MAX:=A;
MAXX:=I;
WRITELN(' 4) МАКСИМАЛЬНЫЙ ЭЛЕМЕНТ ИЗ ПЕРВЫХ 10-И РАВЕН:',MAX:4,', ЕГО НОМЕР:',MAXX:4);
END;
END;
END.