Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Delphi, Kylix and Pascal


Ответ
 
Опции темы Опции просмотра
Старый 24.10.2010, 19:46   #1 (permalink)
kaprizzzz
Новичок
 
Регистрация: 24.10.2010
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
Red face Интересные программы

Ребят. Обращаюсь к Вам за помощью. У меня ГОСы на носу, а вот с Паскалем не дружу и поэтому нет одного зачета.
Прошу написать проги и рассказать что и как в них. Какие-то элементарные вещи я знаю (напр. var-описание переменной, array -массив), но этого мало.
Задача 1
Вводятся длина одномерного массива, состоящего из целых чисел, и его элементы. С этим массивом произвести указанные действия - найти минимум среди чисел, кратных 4 и вывести результаты. Если используется "заданное число", то оно тоже вводится.

Задача 2
Вводятся размеры двумерного массива, состоящего из целых чисел, и его элементы. С этим массивом произвести указанные действия - найти столбец с минимальным средним арифметическим чётных чисел и вывести результаты.
Очень на Вас расчитываю.
kaprizzzz вне форума   Ответить с цитированием

Старый 24.10.2010, 19:46
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Я думаю, что стоит первым делом обратить свое внимание на схожие темы

Интересные ссылки
Подскажите простые и интересные радиосхемы

Старый 24.10.2010, 20:33   #2 (permalink)
MrSTEP
一步一步地会到目的
 
Аватар для MrSTEP
 
Регистрация: 09.05.2009
Адрес: Черноземье
Сообщений: 10,939
Записей в дневнике: 10
Сказал(а) спасибо: 140
Поблагодарили 80 раз(а) в 33 сообщениях
Репутация: 28362
По умолчанию

Вопрос по первой задаче: о каком "заданном числе" идет речь? Я так понял, оно не используется, значит и не нужно ничего с ним делать?
MrSTEP вне форума   Ответить с цитированием
Старый 24.10.2010, 20:41   #3 (permalink)
kaprizzzz
Новичок
 
Регистрация: 24.10.2010
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

да, в данном варианте не задано. те как я понимаю мы должны ввести вектор произвольно с клавиатуры.
kaprizzzz вне форума   Ответить с цитированием
Старый 24.10.2010, 20:49   #4 (permalink)
MrSTEP
一步一步地会到目的
 
Аватар для MrSTEP
 
Регистрация: 09.05.2009
Адрес: Черноземье
Сообщений: 10,939
Записей в дневнике: 10
Сказал(а) спасибо: 140
Поблагодарили 80 раз(а) в 33 сообщениях
Репутация: 28362
По умолчанию

Ну сейчас будет
MrSTEP вне форума   Ответить с цитированием
Старый 24.10.2010, 20:51   #5 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Вот:
Код:
VAR
 A:ARRAY[1..100] of INTEGER;
 i,N,Minimum:Integer;
BEGIN
 Write('N= ');
 ReadLn(N);
 Minimum:=32000;
 For i:=1 to N do
  begin
   Write('A[',i:2,']= ');
   ReadLn(A[i]);
   If (A[i]<Minimum) and ((A[i] mod 4)=0) then Minimum:=A[i];
  end;
 WriteLn('Minimum= ',Minimum);
 ReadLn;
END.
Здесь предполагается, что максимальный размер массива - 100 элементов. Исходное значение минимума (32000) - просто произвольное очень большое число, заведомо превышающее вводимые с консоли числа.
Код:
VAR
 A:ARRAY[1..100,1..100] of INTEGER;
 i,j,Jfix,N,M,p,q:Integer;
 Minimum,Medium:Real;
BEGIN
 Write('Number of lines (N)= ');
 ReadLn(N);
 Write('Number of columns (M)= ');
 ReadLn(M);
 Minimum:=100000;
 For i:=1 to N do
  For j:=1 to M do
   begin
    Write('A[',i:2,',',j:2,']= ');
    ReadLn(A[i,j]);
   end;
 q:=0;
 Jfix:=0;
 For j:=1 to M do
  begin
   Medium:=0;
   p:=0;
   For i:=1 to N do
    If (A[i,j] mod 2)=0 then
     begin
      Medium:=Medium+A[i,j];
      p:=p+1;
     end;
   If p>0 then
    begin
     Medium:=Medium/p;
     If Medium<Minimum then 
       begin
        Minimum:=Medium;
        Jfix:=j;
       end; 
     q:=q+1;
    end;
  end;
 If q>0 then
  WriteLn('Column number= ', Jfix,'  Minimum= ',Minimum)
 else
  WriteLn('Array contains no even numbers');
 ReadLn;
END.
Здесь несколько сложнее. Проверяется, имеются ли в столбце четные члены (если да, то p>0), а также имеются ли таковые в матрице в целом (да соответствует q>0). Исходное значение Minimum как и в предыдущем случае - некое произвольное большое число (в программе взято 100000).
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 24.10.2010, 20:51   #6 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от MrSTEP Посмотреть сообщение
Ну сейчас будет
Ох... извините...
Vladimir_S вне форума   Ответить с цитированием
Старый 24.10.2010, 20:57   #7 (permalink)
MrSTEP
一步一步地会到目的
 
Аватар для MrSTEP
 
Регистрация: 09.05.2009
Адрес: Черноземье
Сообщений: 10,939
Записей в дневнике: 10
Сказал(а) спасибо: 140
Поблагодарили 80 раз(а) в 33 сообщениях
Репутация: 28362
По умолчанию

Ах, не успел. Ну ничего

Последний раз редактировалось MrSTEP; 24.10.2010 в 22:57
MrSTEP вне форума   Ответить с цитированием
Старый 24.10.2010, 21:07   #8 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Сейчас заметил, что номер столбца забыл зафиксировать и вывести. Исправил.
Vladimir_S вне форума   Ответить с цитированием
Старый 24.10.2010, 21:32   #9 (permalink)
kaprizzzz
Новичок
 
Регистрация: 24.10.2010
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

А теперь можно для блондинок. Во второй задаче. Что мы подразумеваем под: Jfix, p, q.
i и j это индексы матрицы
m и n это число строк и столбцов соотв.
И если можно поэтапно, что в каком этапе мы делаем.
Спасибо за понимание.
kaprizzzz вне форума   Ответить с цитированием
Старый 24.10.2010, 22:24   #10 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от kaprizzzz Посмотреть сообщение
А теперь можно для блондинок. Во второй задаче. Что мы подразумеваем под: Jfix, p, q.
i и j это индексы матрицы
m и n это число строк и столбцов соотв.
И если можно поэтапно, что в каком этапе мы делаем.
Спасибо за понимание.
Jfix - это искомый номер столбца, в котором наименьшее значение среднего по четным числам.
p и q это служебные параметры. В программе (после ввода самОй матрицы) последовательно перебираются столбцы. Вначале каждого исследования столбца параметру p присваивается значение p=0. Далее считается количество четных чисел в столбце - это и есть p. И только если p оказывается для данного столбца отличным от нуля, тогда, во-первых, производится деление суммы четных чисел на это самое p, и во-вторых, производится сравнение полученного среднего значения с найденным ранее (по предыдущим столбцам) минимальным средним.
Что касается q, то он отвечает за наличие четных чисел ВО ВСЕЙ МАТРИЦЕ. Если таковых не обнаруживается, то выводится соответствующее сообщение: "Четных чисел в массиве нет".
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 16:49.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.