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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.03.2011, 17:22   #1
vatakat
Пользователь
 
Регистрация: 23.03.2011
Сообщений: 17
По умолчанию 1.Циклы.Ветление. 2.Массивы

Доброго времени суток! Помогите пожалуйста решить две задачки в паскале

1. Циклы. Ветвление.
Для заданных N чисел просуммировать только те, которые по модулю больше 5.

2. Массивы.
В заданном двумерном массиве, отсортировать по убыванию 2 и 4 строки.
(сделать сортировку подпрограммы)
vatakat вне форума Ответить с цитированием
Старый 23.03.2011, 17:24   #2
danekne
Форумчанин
 
Регистрация: 12.02.2007
Сообщений: 360
По умолчанию

summa=0
1) for :=1 to n do
begin
if ABS(a[i])>5 then
summa=summa+a[i]
end;

2) что такое сортировка подпрограммы? Каким методом сортировать?
danekne вне форума Ответить с цитированием
Старый 23.03.2011, 17:31   #3
vatakat
Пользователь
 
Регистрация: 23.03.2011
Сообщений: 17
По умолчанию

Спасибо большое за решение первой задачи!=)

Я даже без понятия, что за сортировка..просто препод так сказал) если можешь, то тогда реши без неё.
vatakat вне форума Ответить с цитированием
Старый 24.03.2011, 07:09   #4
vatakat
Пользователь
 
Регистрация: 23.03.2011
Сообщений: 17
По умолчанию

Актуально!
vatakat вне форума Ответить с цитированием
Старый 24.03.2011, 07:38   #5
Sparkman
220400
Форумчанин
 
Аватар для Sparkman
 
Регистрация: 21.05.2010
Сообщений: 726
По умолчанию

Цитата:
Сообщение от vatakat Посмотреть сообщение
Актуально!
2. Массивы.
В заданном двумерном массиве, отсортировать по убыванию 2 и 4 строки.
(сделать сортировку с помощью подпрограммы)
как то так:
Код:
const n=4;
// n - размер квадратного массива
var mas : array [1..n,1..n] of integer;
// mas - заданный двумерный массив
    tmp : array [1..n] of integer;
// tmp - временный одномерный массив
    i,j : integer;
// i,j - счетчики
procedure sort(var InM : array of integer);
// подпрограмма сортировки
var k,l,temp:integer;
// k,l - счетчики
// temp - переменная для чисел
begin
// сортировка одномерного массива методом перебора
     for k:=0 to n-1 do
     for l:=0 to n-1 do
     if k<l then
     begin
          if InM[k]<InM[l] then
          begin
               temp := InM[k];
               InM[k] := InM[l];
               InM[l] := temp;
          end;
     end else
     if k>l then
     begin
          if InM[k]>InM[l] then
          begin
               temp := InM[k];
               InM[k] := InM[l];
               InM[l] := temp;
          end;
     end;
end;
// начало основного кода программы
BEGIN
// инициализируем генератор псевдослучайных чисел
     randomize;
     writeln('Massive:');
// заполняем двумерный массив псевдослучайными числами от 0 до 9
     for i:=1 to n do
     begin
          for j:=1 to n do
          begin
               mas [i,j]:=random(9);
               write(mas[i,j]);write(' ');
          end;
          writeln;
     end;
     writeln;

// присваиваем вторую строку двумерного массива mas в одномерный массив tmp
     for i:=1 to n do
     tmp[i]:=mas[2,i];

// вызываем процедуру сортировки
     sort(tmp);

// обратно присваиваем значения отсортированного одномерного массива tmp во вторую строку mas
     for i:=1 to n do
     mas[2,i]:=tmp[i];

// присваиваем четвертую строку двумерного массива mas в одномерный массив tmp
     for i:=1 to n do
     tmp[i]:=mas[4,i];

// вызываем процедуру сортировки
     sort(tmp);

// обратно присваиваем значения отсортированного одномерного массива tmp в четвертую строку mas
     for i:=1 to n do
     mas[4,i]:=tmp[i];

// выводим результат
     writeln('Result:');
     for i:=1 to n do
     begin
          for j:=1 to n do
          begin
               write(mas[i,j]);
               write(' ');
          end;
          writeln;
     end;
     writeln;
     readln;
END.
Cерьёзной помощи не ждите - помогаю в перерывах на "перекур".
Не существует ничего невозможного для человека, который не собирается ничего делать сам.
Не учите человека, если вы не его учитель.

Последний раз редактировалось Sparkman; 24.03.2011 в 10:53.
Sparkman вне форума Ответить с цитированием
Старый 24.03.2011, 09:40   #6
vatakat
Пользователь
 
Регистрация: 23.03.2011
Сообщений: 17
По умолчанию

спасибо больше! очень благодарен =)

а кто-нибудь сможет объяснить вкратце как это всё решается или это вкратце не получиться?
vatakat вне форума Ответить с цитированием
Старый 24.03.2011, 10:21   #7
Jakethefish
Форумчанин
 
Регистрация: 13.11.2009
Сообщений: 121
По умолчанию

Сортировка с помощью подпрограммы - пишешь для сортировки отдельную функцию.

http://ru.wikipedia.org/wiki/%D0%90%...B2%D0%BA%D0%B8
Тут описаны алгоритмы. Для начала посмотри пузырьковую сортировку и те алгоритмы, которые на ней основаны.
Вот тут интересная ссылочка:
http://www.sorting-algorithms.com/
Jakethefish вне форума Ответить с цитированием
Старый 24.03.2011, 10:54   #8
Sparkman
220400
Форумчанин
 
Аватар для Sparkman
 
Регистрация: 21.05.2010
Сообщений: 726
По умолчанию

Цитата:
Сообщение от vatakat Посмотреть сообщение
а кто-нибудь сможет объяснить вкратце как это всё решается или это вкратце не получиться?
добавил комментарии к коду
Cерьёзной помощи не ждите - помогаю в перерывах на "перекур".
Не существует ничего невозможного для человека, который не собирается ничего делать сам.
Не учите человека, если вы не его учитель.
Sparkman вне форума Ответить с цитированием
Старый 24.03.2011, 11:07   #9
vatakat
Пользователь
 
Регистрация: 23.03.2011
Сообщений: 17
По умолчанию

ВСЕМ ОГРОМНОЕ СПАСИБО!=)
vatakat вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Массивы. Вложенные циклы Usefur Помощь студентам 4 27.12.2010 22:48
Циклы и массивы. Теория си+++ tuyana)) Помощь студентам 2 16.12.2010 17:56
Массивы,циклы с параметром Bizikov Помощь студентам 3 04.06.2010 09:30