Форум программистов, компьютерный форум, киберфорум
Наши страницы
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
Алина19
0 / 0 / 0
Регистрация: 25.11.2012
Сообщений: 17
1

Найти наибольший элемент массива, уменьшить его на 2

17.12.2012, 13:37. Просмотров 796. Ответов 9
Метки нет (Все метки)

Задание. Имя массива АС, размер 20. Найти наибольший элемент массива, уменьшить его на 2. Вывести исходный и получившийся массив, а также номер максимального элемента в исходном массиве.
Выдает ошибку 26 на 22-ой строке. Как исправить?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
program exp2;
Uses crt;
Const n=20; a=2;
Var as:array[1..n] of real;
i,m1,m2,as2:integer;
max:real;
begin
clrscr;
for i:= 1 to n do begin
write ('as[', i ,']= ' );
readln (as[i]);
end;
max:=as[i];
for i:=1 to n do if as[i]>max then
begin
max:=as[i];
m1:=i;
end;
writeln('Ishodniy massiv');
for i:=1 to n do
begin
as2:=max-a;
m2:=i;
end;
writeln('Maksimalniy element=','as[m1]',m1:2);
writeln('maksimalniy element-2=');
for i:=1 to n do
writeln;
readln;
end.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.12.2012, 13:37
Ответы с готовыми решениями:

Найти наибольший элемент массива и его порядковый номер
Помогите пожалуйста Вычислить на ЭВМ наибольший элемент массиваи его...

Найти наибольший элемент массива и поставить его первым
Дан массив чисел. Найти наибольший элемент, поставить его первым.

Найти наибольший отрицательный элемент массива и его порядковый номер
Найти наибольшой отрицательный элемент массива Х(А) и его порядковый номер

Двумерные массивы: Найти наибольший элемент массива и его местоположение
Дан целочисленный массив из 5 строк и 3 столбцов. Найти наибольший элемент...

Найти наибольший элемент массива и поменять его местами с последним элементом
В массиве из 15 вещественных чисел найти наибольший элемент n поменять его...

9
Puporev
Модератор
54717 / 42123 / 29086
Регистрация: 18.05.2008
Сообщений: 99,430
17.12.2012, 15:06 2
Var as:array[1..n] of real;
так нельзя называть переменные, это служебное слово
1
Алина19
0 / 0 / 0
Регистрация: 25.11.2012
Сообщений: 17
17.12.2012, 15:14  [ТС] 3
а как назвать?
0
Puporev
Модератор
54717 / 42123 / 29086
Регистрация: 18.05.2008
Сообщений: 99,430
17.12.2012, 15:16 4
Да как хочешь, что, букв мало? Только не называй служебными словами типа begin, end...
0
Алина19
0 / 0 / 0
Регистрация: 25.11.2012
Сообщений: 17
17.12.2012, 15:22  [ТС] 5
если называю к примеру y, то ошибка 121 на 11 строке
0
Puporev
Модератор
54717 / 42123 / 29086
Регистрация: 18.05.2008
Сообщений: 99,430
17.12.2012, 15:24 6
Так нужно во всей программе поменять as на y.
0
Алина19
0 / 0 / 0
Регистрация: 25.11.2012
Сообщений: 17
17.12.2012, 15:29  [ТС] 7
если заменить все as на у, все равно ошибка 26 на 22 строке.
0
Puporev
Модератор
54717 / 42123 / 29086
Регистрация: 18.05.2008
Сообщений: 99,430
17.12.2012, 15:33 8
Перенесите as2 в тип real.
Pascal
1
var as2:real;
1
Алина19
0 / 0 / 0
Регистрация: 25.11.2012
Сообщений: 17
17.12.2012, 15:45  [ТС] 9
теперь считает, спасибо. только ответ не такой, который мне нужен.
у[20]=2, а мне нужен не максимальный элемент по индексу, а наибольший элемент массива.
Максимальный элемент у[m1]11 - тут правильно.
Максимальный элемент-2 - ответа нет. Как исправить код?
0
Puporev
Модератор
54717 / 42123 / 29086
Регистрация: 18.05.2008
Сообщений: 99,430
17.12.2012, 15:58 10
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Uses crt;
Const n=20;
      a=2;
Var ac:array[1..n] of integer;
    i,m1,m2:integer;
    max,as2:real;
begin
clrscr;
writeln('Введите элементы масива, целые числа:');
for i:= 1 to n do
 begin
  write ('ac[',i,']=');
  readln (ac[i]);
 end;
clrscr;
writeln('Исходный массив:');
for i:=1 to n do
write(ac[i],' ');
writeln;
max:=ac[1];
m1:=1;
for i:=1 to n do
if ac[i]>max then
 begin
  max:=ac[i];
  m1:=i;
 end;
writeln('Maksimalniy element ac[',m1,']=',max);
ac[m1]:=ac[m1]-a;
writeln('maksimalniy element-2=',max-a);
writeln('Измененный массив:');
for i:=1 to n do
write(ac[i],' ');
readln;
end.
1
17.12.2012, 15:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.12.2012, 15:58

Найти наибольший элемент массива, кратный трем и его порядковый номер
1задача: Найти наибольший элемент массива X(N), кратный трем и его порядковый...

Найти наибольший элемент массива и заменить его значением произведением всех элементов
в масиве М, состоящего из 30 элементов найти наибольший элемент и заменить его...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru