Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Помогите, пожалуйста, решить две задачи в паскале. (http://www.tehnari.ru/f41/t32979/)

Mazura 09.02.2010 17:04

Помогите, пожалуйста, решить две задачи в паскале.
 
Всем привет!!!! прошу помочь решить 2 задачки на паскале если не сложно а то я в паскале не очень понимаю а здача практики на носу Я одну сделал а эти не успеваю((( , буду сильно благодарен если поможите!!!!))))
1.Циклы: Указываеться длина первого прыжка лягушки и ее начальное растояние до болота. Лягушка каждый последуйщий прыжок делает вдвое короче предыдущего. Достигнет ли она болота, и если да, то за сколько прыжков?
2.Развилка:Вводится время (только часы, без минут). Программа выдает соответствующие приветствие("Доброе утро","Добрый день" и т.п.)
ЗАРАНИЕ СПАСИБО!!!!!!!!!!!!!!!!!

AlexZir 09.02.2010 18:39

В первой задаче решение вроде бы очевидно (смотрите листинг), но при слишком большом отношении расстояния до болота к длине прыжка функция, описывающая движение лягушки, превращается в бесконечно убывающий ряд. Предлагаю самостоятельно дополнить решение необходимым условием, учитывающим эту особенность задачи.
Код:

program kwaken;
var dlin, s: real;
n:integer;
begin
writeln('Input length');
readln(dlin);
writeln('Input distance');
readln(s);
while s>0 do begin
s:=s-dlin;
dlin:=dlin/2;
inc(n); end;
writeln('Quantity of jumps to a bog',n);
readln
end.

Вторая задача:
Код:

program TimeOfDays;
var n: integer;
begin
n:=25;
while (n>24) or (n<0) do begin
writeln('Input time');
readln(n); end;

case n of
0..5,24: writeln('Доброй ночи');
6..11: writeln('Доброе утро');
12..16:writeln('Добрый день');
17..23:writeln('Добрый вечер'); end;
readln
end.


Mazura 09.02.2010 18:54

Спасибо большое!!!!!!!!!! Ты просто мой спаситель)))))))

Mazura 09.02.2010 20:33

И еще если не сложно помогите с вот этой задачей:
Массивы: В массиве подсчитать количество положительных и количество отрицательных элементов, кратных данному K.
Буду очень благодарен!!!!!!!!

MrSTEP 09.02.2010 20:42

несложная задача, попробуйте сами, мы исправим, если что

Mazura 09.02.2010 20:45

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

MrSTEP 09.02.2010 20:48

ну ждите, сейчас сделаю

Vladimir_S 09.02.2010 20:56

Цитата:

Сообщение от Mazura (Сообщение 293571)
И еще если не сложно помогите с вот этой задачей:
Массивы: В массиве подсчитать количество положительных и количество отрицательных элементов, кратных данному K.
Буду очень благодарен!!!!!!!!

Да не так, чтобы сложно...
Код:

CONST
 N=10;
VAR
 A:ARRAY[1..N] of INTEGER;
 Nneg, Npos, K, i:INTEGER;
BEGIN
 Write('K= ');
 ReadLn(K);
 WriteLn;
 Randomize;
 Nneg:=0;
 Npos:=0;
 For i:=1 to N do
  begin
  A[i]:=Random(100)-50;
  Write(A[i]:5);
  If (A[i]>0) and ((A[i] mod K)=0) then INC(Npos);
  If (A[i]<0) and ((A[i] mod K)=0) then INC(Nneg);
  end;
 WriteLn;
 WriteLn('The number of positive elements, divisible by ',K,' is ', Npos);
 WriteLn('The number of negative elements, divisible by ',K,' is ',  Nneg);
 ReadLn;
END.


MrSTEP 09.02.2010 20:57

Код:

uses crt;
var a:array[1..100] of integer;
    n,i,k,kpol,kotr:integer;
begin clrscr;
    write ('Vvedi k: ');
    readln (k);
    write ('Vvedi kol-vo el-tov massiva: ');
    readln (n);
    kpol:=0;
    kotr:=0;
    for i:=1 to n do begin
      readln (a[i]);
      if a[i]>0 then
      kpol:=kpol+1
      else
      if a[i] mod k = 0 then
        kotr:=kotr+1;
      end;
    writeln ('Kol-vo polozhitelnykh elementov: ', kpol, ', Kol-vo otricatelnykh, kratnyh k: ', kotr);
    readkey;
end.

разбирайтесь, спрашивайте

MrSTEP 09.02.2010 20:59

а кратность относится и к тем, и к другим??


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

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.