Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/19: Рейтинг темы: голосов - 19, средняя оценка - 4.68
0 / 0 / 1
Регистрация: 05.03.2012
Сообщений: 28

Составьте программу удаления элементов одномерного массива

09.03.2012, 13:50. Показов 4106. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
1. Составьте программу удаления элементов одномерного массива A(N),равных элементу этого массива
2. составьте программу, отыскивающую в одномерном массиве A(N) элемент,встречающийся наибольшее число раз, и если таких чисел несколько, то выбирающую из них наименьшее.
3. Составьте программу, генерирующую одномерный массив X(N), каждый элемент x[i] которого равенминимальному из чисел y[1], y[2],...,y[i], где указанные числа элементы одномерного массива Y(N).
4. Составьте программу нахождения наименьшего элемента двумерного массива A(N,M), большего данного T.
5. Составьте программу, работающую таким образом. В каждой строке массива A(N,M) выбираются минримальный элемент, затем среди этих чисел выбирается максимальный, а потом определяется номер строки и номер столбца массива A(N,M), в которых расположено выбранное число.

Спасите пожалуйста. завтра два экзамена по программированию и по дискретке, ну никак не успеваю подготовиться к обоим, а очень надо лабы по программированию доделать. Заранеее огромное спасибо.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.03.2012, 13:50
Ответы с готовыми решениями:

Составьте программу удаления элементов одномерного массива
Составьте программу удаления элементов одномерного массива A(N), больших последнего элемента массива.

Составьте программу упорядочения по возрастанию элементов одномерного массива
Составьте программу упорядочения по возрастанию элементов одномерного массива A(N), принадлежащих отрезку (O, R).

Составьте программу вычисления суммы элементов одномерного массива
Составьте программу вычисления суммы элементов одномерного массива A(N), встречающихся в этом массиве ровно один раз.

12
Mobile Software Engineer
Эксперт С++
 Аватар для Ev[G]eN
5381 / 1585 / 956
Регистрация: 23.01.2011
Сообщений: 3,214
09.03.2012, 14:04
Цитата Сообщение от ritavishneva Посмотреть сообщение
4. Составьте программу нахождения наименьшего элемента двумерного массива A(N,M), большего данного T
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
const
  n = 5;
var
  Matr: array[1..n, 1..n] of integer;
  i_min, j_min, i, j: byte;
  Chislo: integer;
begin
  randomize;
  i_min:=1; j_min:=1;
  writeln('Матрица: ');
  for i:=1 to n do
  begin
    for j:=1 to n do
    begin
      Matr[i, j]:=random(20);
      write(Matr[i, j]:4);
    end;
    writeln;
  end;
  write('Число: ');
  readln(Chislo);
  for i:=1 to n do
    for j:=1 to n do
      if (Matr[i, j] > Chislo) and (Matr[i, j] < Matr[i_min, j_min]) then
      begin
        i_min:=i;
        j_min:=j;
      end;
  writeln('Минимальный элемент, больший ', Chislo, ': ', Matr[i_min, j_min]);
end.
Добавлено через 3 минуты
Цитата Сообщение от ritavishneva Посмотреть сообщение
3. Составьте программу, генерирующую одномерный массив X(N), каждый элемент x[i] которого равенминимальному из чисел y[1], y[2],...,y[i], где указанные числа элементы одномерного массива Y(N)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
const
  n = 20;
var
  arrA, arrB: array[1..n] of integer;
  i, j: byte;
begin
  randomize;
  writeln('Массив Y: ');
  for i:=1 to n do
  begin
    arrA[i]:=random(20);
    write(arrA[i], ' ');
    if arrA[i] < (n div 2) then
    begin
      inc(j);
      arrB[j]:=arrA[i];
    end;
  end;
  writeln;
  writeln('Массив Х, состоящий из минимальных элементов массива Y: ');
  for i:=1 to j do
    write(arrB[i], ' ');
end.
1
0 / 0 / 1
Регистрация: 05.03.2012
Сообщений: 28
09.03.2012, 14:23  [ТС]
Ev[G]eN, спасибо огромное, но вот в чем проблемка ты пишешь программку через генератор случайных чисел, а мне надо через ввод с клавиатуры, т.к. я сама должна задавать размерность матрицы и сама вписывать в них циферки. Это по 4 задачке.
0
Почетный модератор
 Аватар для КонецСвета
7966 / 3937 / 2464
Регистрация: 30.10.2011
Сообщений: 5,377
09.03.2012, 14:32
Цитата Сообщение от ritavishneva Посмотреть сообщение
5. Составьте программу, работающую таким образом. В каждой строке массива A(N,M) выбираются минримальный элемент, затем среди этих чисел выбирается максимальный, а потом определяется номер строки и номер столбца массива A(N,M), в которых расположено выбранное число.
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
42
43
44
uses crt;
const nmax=20;
var a: array [1..nmax,1..nmax] of integer;
    max,i,j,n,m,jmin: integer;
 
begin
repeat
write('Êîëè÷åñòâî ñòðîê, íå áîëåå ',nmax,',n= ');
readln(n);
until n in [1..nmax];
repeat
write('Êîëè÷åñòâî ñòîëáöîâ, íå áîëåå ',nmax,',n= ');
readln(m);
until m in [1..nmax];
writeln('');
for i:=1 to n do
    for j:=1 to m do
        begin
        write('[a',i,',',j,']=');
        readln(a[i,j]);
        end;
write('Äàíà ìàòðèöà');
for i:=1 to (m*4-(12)) do
    write(' ');
writeln('Mèí. çíà÷åíèå ñòðîêè');
for i:=1 to n do
    begin
    jmin:=1;
    for j:=1 to m do
        begin
        write(a[i,j]:4);
        if a[i,j]<a[i,jmin] then jmin:=j;
        end;
    if i=1 then max:=a[i,jmin] else
       if max<a[i,jmin] then max:=a[i,jmin];
    writeln(a[i,jmin]:10);
    end;
writeln('Ìàêñèìàëüíîå èç ìèíèìàëüíûõ = ',max);
for i:=1 to n do
    for j:=1 to m do
        if a[i,j]=max then
           writeln('â ñòðîêå ',i,', â ñòðîëáöå ',j);
readkey
end.
1
0 / 0 / 1
Регистрация: 05.03.2012
Сообщений: 28
09.03.2012, 14:42  [ТС]
Ev[G]eN, по третьей задачке тоже самое, нужно вводить все данные с клавиатуры
0
Mobile Software Engineer
Эксперт С++
 Аватар для Ev[G]eN
5381 / 1585 / 956
Регистрация: 23.01.2011
Сообщений: 3,214
09.03.2012, 14:58
4)
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
const
  Max_Value = 20;
var
  Matr: array[1..Max_Value, 1..Max_Value] of integer;
  i_min, j_min, i, j: byte;
  Chislo, n, m: integer;
begin
  i_min:=1; j_min:=1;
  repeat
    write('N: ');
    readln(n);
    write('M: ');
    readln(m);
  until (n in [1..Max_Value]) and (m in [1..Max_Value]);
  writeln('Введите матрицу: ');
  for i:=1 to n do
  begin  
    for j:=1 to m do
    begin
      write('Matr[', i, ', ', j, '] = ');
      readln(Matr[i, j]);
    end;
  end;
  writeln('Матрица: ');
  for i:=1 to n do
  begin
    for j:=1 to m do
      write(Matr[i, j]:4);
    writeln;
  end;
  write('Число: ');
  readln(Chislo);
  for i:=1 to n do
    for j:=1 to m do
      if (Matr[i, j] > Chislo) and (Matr[i, j] < Matr[i_min, j_min]) then
      begin
        i_min:=i;
        j_min:=j;
      end;
  writeln('Минимальный элемент, больший ', Chislo, ': ', Matr[i_min, j_min]);
end.
Добавлено через 2 минуты
3)
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
const
  Max_Value = 20;
var
  arrA, arrB: array[1..Max_Value] of integer;
  n: integer;
  i, j: byte;
begin
  repeat
    write('N: ');
    readln(n);
  until (n in [1..Max_Value]);
  writeln('Массив Y: ');
  for i:=1 to n do
  begin
    write('arr[', i, '] = ');
    readln(arrA[i]);
    if arrA[i] < (n div 2) then
    begin
      inc(j);
      arrB[j]:=arrA[i];
    end;
  end;
  writeln;
  writeln('Массив Х, состоящий из минимальных элементов массива Y: ');
  for i:=1 to j do
    write(arrB[i], ' ');
end.
0
0 / 0 / 1
Регистрация: 05.03.2012
Сообщений: 28
09.03.2012, 15:39  [ТС]
КонецСвета, объясни пожалуйста строчку 23
23 for i:=1 to (m*4-(12)) do
откуда взялось (m*4-(12)) и что это такое.
0
 Аватар для BumerangSP
4311 / 1423 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
09.03.2012, 15:44
ritavishneva, объясните, пожалуйста, первую задачу
0
0 / 0 / 1
Регистрация: 05.03.2012
Сообщений: 28
09.03.2012, 15:56  [ТС]
BumerangSP, удалить все элементы из одномерного массива, которые равны последнему и сдвинуть их, т.е. должен получиться массив по кол-ву членов меньше на число удаленных чисел.
0
 Аватар для BumerangSP
4311 / 1423 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
09.03.2012, 16:13
1)
Если я правильно понял:
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
uses crt;
var i,j,k,n: integer;
    a,b: array [1..100] of integer;
begin
 clrscr;
 randomize;
 write('N: ');
 readln(n);
 for i:=1 to n do
  begin
   write('[', i,'] = ');
   readln(a[i]);
  end;
 writeln('Начальный массив: ');
 for i:=1 to n do
  write(a[i]:3);
  for i:=1 to n do
   if a[i]<>a[n] then
    begin
     inc(j);
     b[j]:=a[i];
    end;
 writeln;
 writeln('Полученный массив: ');
 for i:=1 to j do
  write(b[i]:3);
 readln;
end.
1
trainspotting
1086 / 486 / 384
Регистрация: 11.11.2010
Сообщений: 773
09.03.2012, 16:46
BumerangSP, вроде бы сдвиг просили, а не через доп. массив.
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
const
  maxSize=100;
type
  intVector=array[1..maxSize] of integer;
var
  a:intVector;
  i,j,buf,arrSize:integer;
begin
  repeat
    write('Array size, not greater than ',maxSize,'=');
    readln(arrSize);
  until arrSize in [1..maxSize];
  randomize;
  writeln('Input array');
  for i:=1 to arrSize do
    begin
      a[i]:=random(10);
      write(a[i]:4);
    end;
  writeln;
  buf:=a[arrSize];
  dec(arrSize);
  i:=1;
  while i<=arrSize do
    if a[i]=buf then
      begin
        for j:=i to arrSize-1 do
          a[j]:=a[j+1];
        dec(arrSize);
      end
    else
      inc(i);
  if arrSize<>0 then
    begin
      writeln('Output array');
      for i:=1 to arrSize do
        write(a[i]:4);
    end
  else
    writeln('All elements were deleted');
end.
0
Почетный модератор
 Аватар для КонецСвета
7966 / 3937 / 2464
Регистрация: 30.10.2011
Сообщений: 5,377
09.03.2012, 16:49
ritavishneva, for i:=1 to (m*4-(12)) do - это просто способ вывести минимальные значения в конце той же строки, в которой находится это самое значение, то есть после слов "Дана матрица" будет выведен текст "минимальное значение" на некотором расстроянии, которое меняется в зависимости от количества столбцов (m), каждый столбец размером в 4 символа. а 12 вычитаю потому что в тексте "Дана матрица" 12 символов....
одним словом, для красоты вывода
если надо - намекни, переделаю =)
0
 Аватар для BumerangSP
4311 / 1423 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
09.03.2012, 20:06
versa4e, ну, в начальном-то задании ничего не сказано) Значит не совсем понял.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.03.2012, 20:06
Помогаю со студенческими работами здесь

Составьте программу вычисления произведения нечетных элементов одномерного массива
Составьте программу вычисления произведения нечетных элементов одномерного массива A(N), заполнив его случайным образом.

Составьте программу вычисления суммы пяти первых элементов одномерного массива A(N)
Составьте программу вычисления суммы пяти первых элементов одномерного массива A(N), заполнив его случайным образом. var a:array of...

Составьте программу упорядочения (по возрастанию) элементов одномерного массива А(N), встречающихся в массиве В(R)
Составьте программу упорядочения (по возрастанию) элементов одномерного массива А(N), встречающихся в массиве В(R)

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

Составьте программу вычисления суммы тех элементов одномерного массива A(N), что одноврменно встречаются в массиве B(N).
Составьте программу вычисления суммы тех элементов одномерного массива A(N), что одноврменно встречаются в массиве B(N).


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru