Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.03.2016, 14:53   #1
mari_ly
 
Регистрация: 30.03.2016
Сообщений: 5
По умолчанию Реализовать программу меню

Реализовать программу меню:

1. Заполнить массив нулями
2. Заполнить массив с клавиатуры
3. Заполнить массив случайными числами
4. Распечатать массив
5. Определить максимальный элемент в массиве
6. Определить минимальный элемент в массиве
7. Отсортировать массив по возрастанию
8. Отсортировать массив по убыванию

через указатели на функцию.
mari_ly вне форума Ответить с цитированием
Старый 30.03.2016, 17:49   #2
oldsnowman
Участник клуба
 
Аватар для oldsnowman
 
Регистрация: 20.02.2015
Сообщений: 1,226
По умолчанию

Вот хотя бы язык указал, на каком нужно реализовать. А то и на ассемблере могут подсказать (просто сейчас злые гении отдыхают).
Цитата:
Реализовать программу меню:
Если в паскале, то массив заполнить нулями можешь через цикл for.
Для заполнения с клавиатуры используй readln
Для распечатки используй цикл с writeln
MAX и Min находим примерно так
Код:
cоnst n = 10; {10 элементов}

var a : array[1..n] of Real;
min, max, i:integer;
begin
for i:=1 to n do begin
Write('Элемент А [', i, '] = ');
ReadLn(a[ i ]);
end;
min:=1;max:=1;
for i:=2 to n do begin
if A[ i ] > a[ max ] then max = i;
if A[ i ] < a[ min ] then min = i;
end;
writeln('min=', A[min], 'max=',A[max]);
end.
По сортировки массива
Код:
 Алгоритм сортировки обменами ("пузырьковая" сортировка)
Метод "пузырька" один из самых простых методов внутренней сортировки. Суть алгоритма состоит в последовательном просмотре массива от конца к началу или от начала к концу и сравнении каждой пары элементов между собой. При этом "неправильное" расположение элементов устраняется путем их перестановки. Процесс просмотра и сравнения элементов повторяется до просмотра всего массива. При сортировке по возрастанию "легкие" элементы с меньшим значением как бы "всплывают" к началу массива подобно тому, как это делают пузырьки воздуха в стакане с водой - отсюда и происходит популярное название алгоритма.

Procedure Puzirek;
Var i, j: Integer;
y:Integer;
Begin
For i := 2 to n do
For j := n downto i do
If X[j-1] > X[j] then begin y:=X[j-1];
X[j-1]:=X[j];
X[j]:=y
end;
End;
Цитата:
через указатели на функцию
Что-то странное...
oldsnowman вне форума Ответить с цитированием
Старый 03.04.2016, 10:31   #3
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Код:
var p:array[1..10] of integer;
    i,z:integer;
    d:boolean;

procedure Arr0;
begin
   For i:=1 to 10 do
      p[i]:=0;
end;

procedure ArrRead;
begin
   For i:=1 to 10 do
      Readln(p[i]);
end;

procedure ArrRand;
begin
   Randomize;
   For i:=1 to 10 do
      p[i]:=Random(100);
end;

procedure WriteArr;
begin
   For i:=1 to 10 do
      Write(p[i]:3,'  ');
   Writeln;
end;

procedure Max;
begin
   z:=p[1];
   For i:=2 to 10 do
      If z<p[i] then
         z:=p[i];
   Writeln('Max = ',z);
   Writeln;
end;

procedure Min;
begin
   z:=p[1];
   For i:=2 to 10 do
      If z>p[i] then
         z:=p[i];
   Writeln('Min = ',z);
   Writeln;
end;

procedure SortWoz;
begin
   Repeat
      d:=true;
      For i:=1 to 9 do
         If p[i]>p[i+1] then
         begin
            z:=p[i];
            p[i]:=p[i+1];
            p[i+1]:=z;
            d:=false;
         end;
   Until d;
end;

procedure SortUbw;
begin
   Repeat
      d:=true;
      For i:=1 to 9 do
         If p[i]<p[i+1] then
         begin
            z:=p[i];
            p[i]:=p[i+1];
            p[i+1]:=z;
            d:=false;
         end;
   Until d;
end;

var c:char;
begin
   Repeat
      Writeln('0 - Exit');
      Writeln('1 - Arr0');
      Writeln('2 - ArrRead');
      Writeln('3 - ArrRand');
      Writeln('4 - WriteArr');
      Writeln('5 - Max');
      Writeln('6 - Min');
      Writeln('7 - SortWoz');
      Writeln('8 - SortUbw');
      Readln(c);
      Case c of
      '0': Exit;
      '1': Arr0;
      '2': ArrRead;
      '3': ArrRand;
      '4': WriteArr;
      '5': Max;
      '6': Min;
      '7': SortWoz;
      '8': SortUbw;
      else
         Writeln('NO COMMAND!');
      end;
   Until c='0';
end.
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как реализовать swipe меню Android Samkoff Мобильные ОС (Android, iOS, Windows Phone) 2 30.09.2014 14:39
Прошу помочь реализовать программу xzibit777999 Помощь студентам 6 17.09.2012 22:53
Реализовать программу с подпрограммой-функцией PHARAoN91 Паскаль, Turbo Pascal, PascalABC.NET 0 23.11.2011 10:19
Реализовать программу archyk Фриланс 1 05.03.2010 21:16
помогити реализовать программу на С++ Lorden Помощь студентам 12 09.03.2009 11:46