Форум программистов, компьютерный форум, киберфорум
Наши страницы
PascalABC.NET
Войти
Регистрация
Восстановить пароль
 
zPANKz
0 / 0 / 0
Регистрация: 16.12.2017
Сообщений: 7
1

Задан целочисленный одномерный массив A из N элементов. Найти номер первого максимального значения

16.12.2017, 15:41. Просмотров 158. Ответов 3
Метки нет (Все метки)

Задача:
Задан целочисленный одномерный массив A из N элементов. Найти номер первого максимального значения среди элементов, меньших A1 и расположенных правее последнего элемента, кратного девяти.

Вот программа:
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
36
37
uses crt;
var a:array[1..100] of integer;
    n,i,a1,imx,k:integer;
begin
clrscr;
randomize;
repeat
write('Размер массива до '100,' n=');
readln(n);
until n in [1..100];
writeln('Исходный массив:');
k:=0;
for i:=1 to n do
 begin
  a[i]:=9+random(30);
  write(a[i]:4);
  if (a[i]<a1)and(a[i] mod 9=0) then k:=i
 end;
writeln;
write('Введите число для поиска a1=');
readln(a1);
k:=0;
for i:=1 to n do
if (a[i]<a1)and(a[i] mod 9=0) then k:=i;
if k=0 then write('Нет элементов, кратных 9 и меньших ',a1)
else if k=n then write('Элемент, кратный 9 и меньший ',a1,' последний')
else
 begin
  writeln('Индекс последнего элемета, кратного 9 и меньшего ',a1,'=',k);
  imx:=k+1;
  for i:=k+2 to n do
  if a[i]>a[imx] then imx:=i;
  writeln('Первый максимальный элемент после последнего элемета, кратного 9 и меньшего ',a1);
  write('=',a[imx],' его номер=',imx);
 end;
readln
end.
Нужно изменить программу используя ввод данных из файла и вывод данных в файл. Я пропустил данную тему по причине болезни, поэтому прошу помощи...
Заранее большое спасибо!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2017, 15:41
Ответы с готовыми решениями:

Найти номер первого максимального значения среди элементов
Задан целочисленный одномерный массив A из N элементов. Найти номер первого...

Найти номер первого максимального значения
Дан целочисленный вектор A(n). Найти номер первого максимального значения среди...

Дан целочисленный массив А размера 10. Вывести номер первого и последнего из тех его элементов А[i]
Дан целочисленный массив А размера 10. Вывести номер первого и последнего из...

Задан одномерный массив,найти количество отрицательных элементов
Здравствуйте,увжаемые форумчане. Задали вродь как простую задачку,а решить не...

Дан одномерный числовой массив. Найти сумму максимального и минимального элементов
Дан одномерный числовой массив.Найти сумму максимального и минимального...

3
Cyborg Drone
Модератор
5297 / 3176 / 2442
Регистрация: 17.08.2012
Сообщений: 10,189
17.12.2017, 18:08 2
Особенно в алгоритм не всматривался. Просто перенаправил ввод-вывод на файлы и убрал ненужную строку 17.
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
36
37
38
39
40
41
var
  f: text;
  a: array[1..100] of integer;
  n, i, a1, imx, k: integer;
 
begin
  randomize;
  assign(f, 'input.txt');
  reset(f);
  readln(f, n, a1);
  close(f);
  assign(f, 'output.txt');
  rewrite(f);
  if not (n in [1..100])
    then writeln(f, 'слишком большой размер массива.')
    else begin
      writeln(f, 'Исходный массив:');
      k := 0;
      for i := 1 to n do
        begin
          a[i] := 9 + random(30);
          write(f, a[i]:4)
        end;
      writeln(f);
      k := 0;
      for i := 1 to n do
        if (a[i] < a1) and (a[i] mod 9 = 0) then k := i;
        if k = 0
          then write(f, 'Нет элементов, кратных 9 и меньших ', a1)
          else if k = n
            then write(f, 'Элемент, кратный 9 и меньший ', a1, ' последний')
            else begin
              writeln(f, 'Индекс последнего элемета, кратного 9 и меньшего ', a1, '=', k);
              imx := k + 1;
              for i := k + 2 to n do if a[i] > a[imx] then imx := i;
              writeln(f, 'Первый максимальный элемент после последнего элемета, кратного 9 и меньшего ',a1);
              write(f, '=', a[imx], ' его номер=', imx)
            end
    end;
  close(f)
end.
0
zPANKz
0 / 0 / 0
Регистрация: 16.12.2017
Сообщений: 7
18.12.2017, 09:03  [ТС] 3
Спасибо!!!

Добавлено через 9 часов 30 минут
А можите написать, как будет выглядеть программа без рандома?
0
Cyborg Drone
Модератор
5297 / 3176 / 2442
Регистрация: 17.08.2012
Сообщений: 10,189
18.12.2017, 11:12 4
Тогда нужно уточнить логику работы программы. Напишите, откуда именно нужно вводить размер массива, число для поиска и сам массив? И что куда выводить? Если массив вводится из файла, то располагать ли в этом же файле размер массива, или же определять его размер? Выводить ли массив в выходной файл в случае ввода массива из файла?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.12.2017, 11:12

Целочисленный массив. Поменять местами значения первого и последнего элемента и т.д.
Дан одномерный целочисленный массив А, состоящий из N элементов, N — заданное...

Задан целочисленный массив размерности N. Есть ли среди элементов массива простые числа?
1)Задан целочисленный массив размерности N. Есть ли среди элементов массива...

Во входном файле задан целочисленный двумерный массив. Посчитать среднее арифметическое его элементов
Во входном файле задан целочисленный двумерный массив. Посчитать среднее...


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

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

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