ABA


"שאלה בפסקל - פקודת CASE"
גירסת הדפסה        
קבוצות דיון לימודים, מדע ותרבות נושא #5852 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 5852
maypaz
חבר מתאריך 22.4.02
121 הודעות, דרג אמינות חבר זה
   22:06   01.02.04   
אל הפורום  
  שאלה בפסקל - פקודת CASE  
 
   ערכתי לאחרונה בתאריך 01.02.04 בשעה 22:13 בברכה, maypaz
 
כתוב תכנית בשפת פסקל הקולטת שלושה משתנים המייצגים תאריך : יום, חודש ושנה.
התכנית תבדוק האם התאריך תקין, אם כן יודפס התאריך בליווי ההודעה: "התאריך תקין", ובשורה חדשה יודפס יום המחרת.

אם התאריך אינו תקין תודפס ההודעה: "התאריך אינו תקין".

תודה רבה לעוזרים
זה עבודה להגשה למחר


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  :) Dr Evil 01.02.04 22:23 1
     לא מדוייק Yoni 01.02.04 22:42 2
         אתה יכול לרשום את זה גבר? maypaz 01.02.04 22:46 3
             אני אערוך כמה שינויים קלים בתוכנית הכמעט מושל Yoni 01.02.04 22:55 4
  ועכשיו כולל החלק השני Yoni 01.02.04 22:55 5
     תודה גבר תודה לשניכם maypaz 01.02.04 23:10 6
     גבר אתה עדין פה? ram1256 02.02.04 01:16 7

       
Dr Evil

דרג אמינות חבר זה
   22:23   01.02.04   
אל הפורום  
  1. :)  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 01.02.04 בשעה 22:35 בברכה, Dr Evil
 

program T1;
var day,month,year:integer; bool:boolean;
begin
readln(day,month,year);
case month of
1,3,5,7,8,10,12:if day=31 then bool:=true
else bool:=false;
4,6,9,11:if day=30 then bool:=true
else bool:=false;
2:if day=28 then bool:=true
else bool:=false;
end;
if bool=true then writeln('Wrong Date')
else begin
writeln('Date Right !');
writeln(day,month,year);
writeln('Day after',day+1);
end;
end.

נראה לי בסדר ;]


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Yoni
חבר מתאריך 26.5.02
2305 הודעות, דרג אמינות חבר זה
   22:42   01.02.04   
אל הפורום  
  2. לא מדוייק  
בתגובה להודעה מספר 1
 
ערכתי לאחרונה בתאריך 01.02.04 בשעה 23:14 בברכה, Yoni
 
הDAY צריך להיות בין המספר שרשמת שהוא צריך להיות שווה לו לבין 1(כולל).
חוץ מזה ששכחת שכל שנה המתחלק ב-4 (1996,1000,2000,2444) מכילה 29 ימים בפברואר.

עריכה: בעצם זה כמעט בכלל לא נכון.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
maypaz
חבר מתאריך 22.4.02
121 הודעות, דרג אמינות חבר זה
   22:46   01.02.04   
אל הפורום  
  3. אתה יכול לרשום את זה גבר?  
בתגובה להודעה מספר 2
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Yoni
חבר מתאריך 26.5.02
2305 הודעות, דרג אמינות חבר זה
   22:55   01.02.04   
אל הפורום  
  4. אני אערוך כמה שינויים קלים בתוכנית הכמעט מושל  
בתגובה להודעה מספר 3
 
מושלמת שניתנה לך כבר

program T1;
var day,month,year:integer;
bool:boolean;
begin
readln(day,month,year);
case month of
1,3,5,7,8,10,12:
if (day<32) and (day>0) then bool:=true
else bool:=false;
4,6,9,11:if (day<31) and (day>0) then bool:=true
else bool:=false;
2:if ((day<29) and (day>0)) or ((year mod 4=0) and (day>0) and (day30)) then bool:=true
else bool:=false;
end;
if bool then writeln('correct Date')
else
begin
writeln('Date incorrect !');
end;
end.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Yoni
חבר מתאריך 26.5.02
2305 הודעות, דרג אמינות חבר זה
   22:55   01.02.04   
אל הפורום  
  5. ועכשיו כולל החלק השני  
בתגובה להודעה מספר 0
 
ערכתי לאחרונה בתאריך 01.02.04 בשעה 23:06 בברכה, Yoni
 

VAR
bool,bool2:boolean;
begin
readln(day,month,year);
case month of
1,3,5,7,8,10,12:
if (day<32) and (day>0) then bool:=true
else bool:=false;
4,6,9,11:if (day<31) and (day>0) then bool:=true
else bool:=false;
2:if ((day<29) and (day>0)) or ((year mod 4=0) and (day>0) and (day30)) then bool:=true
else bool:=false;
end;
if bool then
begin
writeln('correct Date')
case month of
1,3,5,7,8,10,12:
if day=31 then bool2:=true
else bool2:=false;
4,6,9,11:if day=30 then bool2:=true
else bool2:=false;
2:if ((year mod 4<>0) and (day=28)) or ((year mod 4=0) and (day=29)) then bool2:=true
else bool2:=false;
if bool2 then
if month=12 then writeln('1','1',year+1)
else writeln('1',month+1,year)
else writeln(day+1,month,year);
end
else
writeln('Date incorrect !');
end.

אני מקווה שהכל נכון
אבל תבדור ליתר בטחון
וחסר לך שאני לא מקבל תודה גדולה על זה!


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
maypaz
חבר מתאריך 22.4.02
121 הודעות, דרג אמינות חבר זה
   23:10   01.02.04   
אל הפורום  
  6. תודה גבר תודה לשניכם  
בתגובה להודעה מספר 5
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ram1256

   01:16   02.02.04   
אל הפורום  
  7. גבר אתה עדין פה?  
בתגובה להודעה מספר 5
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net