Паскаль задачи решения хелп

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by An90, 28 Dec 2008.

  1. An90

    An90 Member

    Joined:
    19 Apr 2008
    Messages:
    11
    Likes Received:
    5
    Reputations:
    0
    1)Линейный массив содержит сведения о кол-ве осадков, выпавших за каждый из 12 месяцев одного года. Составить программу , определяющую общее кол-во осадков за этот год , среднемесячное кол-во осадков, кол-во засушливых месяцев ( когда кол-во осадков было меньше 30 мм) , самый засушливый месяц года.

    2) Найдите в линейном массиве два элемента , сумма которых максимальна.

    ---------------------------------
    люди кто знает решение? (( в пнд-ник уже над сдать (( спс
     
  2. 159932

    159932 Elder - Старейшина

    Joined:
    28 Sep 2007
    Messages:
    587
    Likes Received:
    462
    Reputations:
    5
    sum := 0;
    zas := 0;
    bed := 0;
    for i:=1 to 365 do
    begin
    sum := sum + arr;
    if arr < bed then bed := arr;
    if arr < 30 then zas := zas + 1;
    end;

    writeln('всего за год - ',sum);
    writeln('засушливых дней - ',zas);
    writeln('самый засушливый день - ',bed);
    ------
    max := 0;
    max2 := 0;
    for i:=1 to n do
    begin
    if arr > max then
    begin
    max2 := max;
    max := arr;
    end;
    end;
    writeln(max2,' и ',max);

    --
    зы паскаль не знаю :D так шо можно считать что тут правильного ничего нету))
     
  3. оlbaneс

    оlbaneс Moderator

    Joined:
    5 Nov 2007
    Messages:
    1,378
    Likes Received:
    1,096
    Reputations:
    356
    159932 вот я пытался разобрать пока не дошел до "зы паскаль не знаю так шо можно считать что тут правильного ничего нету))"
    -)
    п.с. если по теме то ход приблизительно правильный. ток доработать чуть надо.
     
    _________________________
  4. lll6

    lll6 Elder - Старейшина

    Joined:
    29 Feb 2008
    Messages:
    83
    Likes Received:
    15
    Reputations:
    5
    Первая
    ______________________________________________
    Code:
    Program osadki;
    	var a:array [1..12] of integer;
    	    x,s,min,i,z:integer;
    Begin
    	min:=maxint;
    	writeln ('Введи кол-во осадков в каждом месяце');
    	 for x:=1 to 12 do begin
          	  readln a[x];              {вводим кол-во осадков за этот месяц} 
    	  s:=s+a[x];                {суммируем} 
    	  if a[x]<30 then z:=z+1;   {проверяем данный месяц на засушливость} 
    	  if min>a[x] then begin min:=a[x]; i:=x; {ищем самый засушливый месяц}
    	 end;
    	writeln ('Засушливых месяцев: ',z,' Всего осадков выпало: ',s,' Самый засушливый месяц: ',i,' Средний уровень осадков: ',s div 12);
    End.
    Вторая
    ______________________________________________
    Code:
    Program osadki;
    	var a:array [1..1000] of integer;
    	    x,y,s,d:integer;
    Begin
    	randomize;
    	 for x:=1 to 1000 do begin
              a[x]:=random(1000);         {заполняем массив случайными числами}
    	 end;
    	  for x:=1 to 999 do
               for y:=x+1 to 1000 do
                if a[x]+a[y]>max then begin max:=a[x]+a[y]; s:=a[x]; d:=a[y];  {поиск максимальной суммы}
    	 end;
    	writeln (' Числа, дающие максимальную сумму: ',s,' ',d);
    End.
     
    #4 lll6, 28 Dec 2008
    Last edited: 28 Dec 2008
    3 people like this.