0 / 0 / 0
Регистрация: 26.04.2009
Сообщений: 7
1

Описать логическую функцию before (t1,t2) для проверки, предшествует ли время t1 времени t2

26.04.2009, 14:39. Показов 2772. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вообщем задание было такое:
Описать логическую функцию before (t1,t2) для проверки, предшествует ли время t1 времени t2 (в рамках суток
Вот текст самой программы но она не правильно работает. Если ввожу для проверки допустим 12 часов 23 минут и 23 секунды во время t1 а во время t2 12:12:24 он выдает true но хотя второе время меньше первого... что я неправильно делаю. И если возможно как нибудь ее урезать то как, Помогите буде очень признателен!!!!
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
Program time;
uses crt;
type
    vremya=record
    chas: 0..23;
    min,sec: 0..59;
    end;
var t1,t2:vremya;
    b:boolean;
begin
     clrscr;
     writeln('vvedite vremya t1');
     read(t1.chas);
     writeln(':');
     read(t1.min);
     writeln(':');
     read(t1.sec);
     writeln('vvedite vremya t2');
     read(t2.chas);
     writeln(':');
     read(t2.min);
     writeln(':');
     read(t2.sec);
 
     if (t1.chas<=23) then
     begin
          if t1.min<=59 then
          begin
               if t1.sec<=59 then
               begin
                    if t2.chas<=23 then
                    begin
                         if t2.min<=59 then
                         begin
                              if t2.sec<=59 then
                              begin
                                   if t1.chas<t2.chas then
                                   b:=true
                                   else
                                   begin
                                        if t1.min<t2.min then
                                        b:=true
                                        else
                                        begin
                                            if t1.sec<t2.sec then
                                             b:=true
                                             else
                                             b:=false;
                                        end;
                                   end;
                                   writeln(b);
                              end
                              else
                              writeln('Oshibka');
                         end
                         else
                         writeln('Oshibka');
                    end
                    else
                    writeln('Oshibka');
               end
               else
               writeln('Oshibka');
          end
          else
          writeln('Oshibka');
     end
     else
     begin
          writeln('Oshibka');
     end;
readln;
readln;
end.
Добавлено через 1 час 55 минут 46 секунд
Что не найдутся ребята мне помочь? Очень нужна порграмма помогите.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.04.2009, 14:39
Ответы с готовыми решениями:

Логическая функцая для проверки, предшествует ли время t1 времени t2
Дано время, описанное следующим образом: Type time=Record h:0..23; m,s:0..59 End; Напишите:...

Описать логическую функцию less(w1,w2), проверяющую предшествует ли лексикографически слово w1 слову w2
tupe слово = file of string; описать логическую функцию less(w1,w2), проверяющую предшествует ли...

Написать функцию, проверяющую, предшествует ли время t1 времени t2 (в рамках суток)
Составные типы данных: структуры Время можно представить с помощью часов,минут и секунд. Написать...

Написать логическую функцию раньше(d1,d2), проверяющую, предшествует ли дата d1 дате d2
Помогите пожалуйста, заранее спасибо. Написать логическую функцию раньше(d1,d2), проверяющую,...

2
57 / 34 / 0
Регистрация: 08.04.2008
Сообщений: 153
26.04.2009, 14:47 2
Ты бы для начало отформатировал бы код как полагается. Я вот, увидев твою простыню, пришел в ужас, читать это невозможно.
0
Почетный модератор
64291 / 47589 / 32740
Регистрация: 18.05.2008
Сообщений: 115,181
26.04.2009, 15:14 3
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Program time;
uses crt;
type
vremya=record
       chas: 0..23;
       min,sec: 0..59;
      end;
function before(a,b:vremya):boolean;
begin
if (a.chas<b.chas) or((a.chas=b.chas)and(a.min<b.min))
   or((a.chas=b.chas)and(a.min=b.min)and(a.sec<b.sec))
   then before:=true else before:=false;
end;
procedure Vyvod_Vrem(var a:vremya);
begin
write(a.chas,':');
if a.min<10 then write('0',a.min,':') else write(a.min,':');
if a.sec<10 then write('0',a.sec) else write(a.sec);
writeln;
end;
var
t1,t2:vremya;
begin
clrscr;
repeat
writeln('vvedite vremya t1');
readln(t1.chas,t1.min,t1.sec);
until(t1.chas>=0)and(t1.chas<=23)
and(t1.min>=0)and(t1.min<=59)and(t1.sec>=0)and(t1.sec<=59);
repeat
writeln('vvedite vremya t2');
readln(t2.chas,t2.min,t2.sec);
until(t2.chas>=0)and(t2.chas<=23)
and(t2.min>=0)and(t2.min<=59)and(t2.sec>=0)and(t2.sec<=59);
clrscr;
write('t1=  ');
Vyvod_Vrem(t1);
write('t2=  ');
Vyvod_Vrem(t2);
write(before(t1,t2));
readln
end.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.04.2009, 15:14
Помогаю со студенческими работами здесь

Описать логическую функцию для файла
Здравствуйте, снова нужна помощь, лекция по файлам ещё не скоро, а сдавать надо раньше(потому что...

Описать логическую функцию правильныйРяд, для кость-домино
Однако отчего она вышла кривой, но работает, если не использовать функцию, а просто приравнять...

Проверить, предшествует ли время t1 времени t2
Прога вот такая: Программа вводит 2ва значения времени при помощи логической функции Ranse(t1,t2)...

Выяснить, предшествует ли время t времени t1
Помогите с функцией past,вроде должно быть что то простое, но как только не крутил не получается ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru