IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Помогите пожалуйста с массивами, у меня экзамен на носу
помогите
сообщение 21.05.2004 17:06
Сообщение #1


Гость






Здравствуйте,скажите,пожалуйста вы не можите мне помочь решить несколько задач
по турбо паскалю-тема массивы,хотя бы что-нибудь!!! Плиз!!!
1 Задан массив из n целых чисел, найти раность между максимальным и минимальным.
2 В массиве из разных целых чисел отсортировать элементы в интервале от
минималього до максимального:если минимум раньше максимума ,то по
возрастанию,если наоборот-по убыванию.
3 Дан массив из целых чисел,поместить отрицательные числа
влево,положительные-вправо.
4 В двумерном массиве определить максимальное значение.
5 В двумерном массиве определить координаты максимального значения.
6 В двумерном массиве поменять местами максимальное и минимальное.
7 В двумерном массиве поменять местами строки содержищие максимальное и
минимальное.
7 Сформировать случайным образом двумерный массив n на m,отсортитовать главную
диагональ.

Очень надеюсь на вашу помощь!!!
Если можите пишите на daria_vorobieva@mail.ru



Даша
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 5)
killerfriz
сообщение 21.05.2004 17:41
Сообщение #2


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской

Репутация: -  0  +


первая выглядит так

Код

uses crt;
Const n=20;
Var
 mass:array [1..n] of integer;
 max,min,i:integer;
begin
    for  i:=1 to n do
    mass[i]:=random(200);
    max:=mass[1];
    for i:=1 to n do
    if mass[i]>max then
    max:=mass[i];
    min:=mass[1];
    for i:=1 to n do
    if mass[i]<min then
    min:=mass[i];
    max:=max-min;
    writeln(' Разность=',max);
    readkey;
end.


Сообщение отредактировано: killerfriz - 21.05.2004 18:08
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
killerfriz
сообщение 21.05.2004 18:13
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской

Репутация: -  0  +


а вторая так

Код

Uses Crt;
Type mas=array [1..20] of integer;
Var
 mass:mas;
 max,min,i,n:integer;
 {===================================Процедуры=======================}
procedure Sort1 (q:integer; var c:mas);
var
I:integer;
m :integer;
p:integer;
temp:integer;
begin
   M:=q-1;
   P:=1;
   While p<>0 do
   Begin
       p:=0;
       for i:=1 to m do
       begin
           if c[i]<c[i+1] then
           begin
               temp:=c[i];
               c[i]:=c[i+1];
               c[i+1]:=temp;
               p:=I;
           end;
       end;
       m:=p-1;
   end;
end;
procedure Sort2 (q:integer; var c:mas);
var I,m,p:integer;
    temp:integer;
begin
   M:=q-1;
   P:=1;
   While p<>0 do
   Begin
       p:=0;
       for i:=1 to m do
       begin
           if c[i]>c[i+1] then
           begin
               temp:=c[i];
               c[i]:=c[i+1];
               c[i+1]:=temp;
               p:=I;
           end;
       end;
       m:=p-1;
   end;
end;
begin
    n:=20;
    for  i:=1 to n do
    mass[i]:=random(200);
    max:=mass[1];
    for i:=1 to n do
    if mass[i]>max then
    max:=i;
    min:=mass[1];
    for i:=1 to n do
    if mass[i]<min then
    min:=i;
    if max>min then
    Sort2 (n,mass)
    else
    Sort1 (n,mass);
    Writeln(' ');
    for  i:=1 to n do
    Writeln(mass[i]);
    readkey;
end.


Может быть кто и компактнее сможет..... <_<

Сообщение отредактировано: killerfriz - 21.05.2004 18:14
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
vovsik
сообщение 21.05.2004 18:29
Сообщение #4





Группа: Пользователи
Сообщений: 6

Репутация: -  0  +


В третьей можно просто также отсортировать массив по возрастанию
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
killerfriz
сообщение 21.05.2004 19:03
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской

Репутация: -  0  +


Цитата
В третьей можно просто также отсортировать массив по возрастанию

Можно и так-же но чтобы массив состоял не только из положительных но и отрицательных надо при заполнение массива за место

Код

mass[i]:=random(200);

написать к примеру
Код

mass[i]:=random(300)-random(300);


А на четвертую у меня так вышло
Код

Uses Crt;
const n=20;
     m=20;
Type mas=array [1..n,1..m] of integer;
Var
 mass:mas;
 max,i,j:integer;

begin
    for  i:=1 to n do
       for j:=1 to n do
       mass[i,j]:=random(300)-random(300);
       max:=mass[1,1];
    for i:=1 to n do
       for j:=1 to n do
         if mass[i,j]>max then
         max:=mass[i,j];
        Writeln('Ответ-',max);
    readkey;
end.


Сообщение отредактировано: killerfriz - 21.05.2004 19:14
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
killerfriz
сообщение 21.05.2004 19:09
Сообщение #6


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской

Репутация: -  0  +


Пятая очень похожа на 4 вот код

Код

Uses Crt;
const n=20;
     m=20;
Type mas=array [1..n,1..m] of integer;
Var
 mass:mas;
 max,i,j,x,y:integer;

begin
    for  i:=1 to n do
       for j:=1 to n do
       mass[i,j]:=random(300)-random(300);
       max:=mass[1,1];
    for i:=1 to n do
       for j:=1 to n do
         if mass[i,j]>max then
         begin
             max:=mass[i,j];
             x:=i;
             y:=j;
         end;
       Writeln('Строка-',x,'  Столбец-',y);
    readkey;
end.


Сообщение отредактировано: killerfriz - 21.05.2004 19:14
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 18.07.2025 13:55
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"