ABA


"שאלה בפסקל - כיתה י''ב דחוף להיום!"
גירסת הדפסה        
קבוצות דיון לימודים, מדע ותרבות נושא #5474 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 5474
Mystics  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 18.3.02
45200 הודעות, 1 פידבק
   18:38   17.01.04   
אל הפורום  
  שאלה בפסקל - כיתה י''ב דחוף להיום!  
 
   ערכתי לאחרונה בתאריך 17.01.04 בשעה 18:59 בברכה, Mystics
 
א. כתוב אלגוריתם בשם מחסנית_סדרה_חשבונית(S) אשר מקבל כפרמטר,
מחסנית המכילה לפחות שני איברים, ומחזיר "אמת" אם כל איברי המחסנית מהווים סדרה חשבונית,
כאשר האיבר הראשון בסדרה הוא המספר הנמצא בראש המחסנית, אחרת מחזיר "שקר".
דוגמא: איברי המחסנית הבאה מהווים סדרה חשבונית:
| 22 | 17 | 12 | 7 |
ב. ממש, בסביבת עבודה, את האלגוריתם מחסנית_סדרה_חשבונית(S).

ג. כיצד תשנה את האלגוריתם שכתבת, במידה ותצטרכי לכתוב אלגוריתם מחסנית_סדרה_הנדסית(S)
דוגמא למחסנית סדרה הנדסית:
| 54 | 18 | 6 | 2 |


ßarak,


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

  האשכול     מחבר     תאריך כתיבה     מספר  
  כנס דני15  17.01.04 19:35 1
     עוד 1 Mystics  17.01.04 20:55 2
         לא עושים פה שיעורי בית ashi 17.01.04 21:22 3
             זה לא שלי... Mystics  17.01.04 22:21 5
         תשובה: owner 18.01.04 19:27 6

       
דני15 
חבר מתאריך 3.8.02
47437 הודעות, 8 פידבק
   19:35   17.01.04   
אל הפורום  
  1. כנס  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 17.01.04 בשעה 19:36 בברכה, דני15
 
סדרה חשבונית היא סדרה בה היחס בין האיברים הוא תוספת או הפחתה של מספר קבוע ובה האיבר האמצעי שווה לפעמיים סכום שני האיברים השכנים.
הדרך שלי היא מעט ארוכה אך היא נוסתה ועובדת.
יש לשלוף את שני האיברים הראשונים, מהם למצוא את הפרש הסדרה
אני השתמשתי במשתנה בוליאני כדי לעבור על המחסנית ולבדוק עבור כל זוג איברים עוקבים האם ההפרש ביניהם קבוע. המשתנה הבוליאני אותחל ל-FALSE כאשר התנאי לא התקיים והלולאה הופסקה.

א.
האלגוריתם הוא כזה:
מחסנית_סדרה_חשבונית(S)
1) שלוף_ממחסנית(S,x)
2) שלוף_ממחסנית(S,y)
3) d<-- x-y
4) bool<--TRUE
5) כל עוד bool והמחסנית_לא_ריקה בצע:
(5.1)שלוף_ממחסנית(s,x)
(5.2)שלוף_ממחסנית(s,y)
(5.3) אם לא x-y=d אז
(5.3.1) bool<--false
6) החזר bool.

ב. כתבתי תוכנית מלאה עם פונקציה שעושה זאת.


program sidr;
uses stack;
var l:integer;
mahsanit:stack_type;
mispar:integer;

function sidra(s:stack_type):boolean;
var
x,y,d:integer;
bool:boolean;
begin

stack_pop(s,x);
stack_pop(s,y);
d:=x-y;
bool:=true;
while bool and not (stack_empty(s)) do
begin
stack_pop(s,x);
stack_pop(s,y);
if not (x-y=d) then
bool:=false;
end;
sidra:=bool;
end;
(*תכנית ראשית למימוש הפונקציה*)
begin
for l:=1 to 10 do
begin
read(mispar);
stack_push(mahsanit,mispar);
end;
if sidra(mahsanit) then
writeln('It is an arithmetic series') else
writeln('It is NOT an arithmetic series');


readln;
end.



ג. ההבדל בין סדרה חשבונית לסדרה הנדסית הוא שבסדרה הנדסית היחס בין האיברים הוא יחס של כפל. לכן במקום x-y יש לבצע x/y.

אגב... מותר לשנות את מצבה הסופי של המחסנית ?


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Mystics  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 18.3.02
45200 הודעות, 1 פידבק
   20:55   17.01.04   
אל הפורום  
  2. עוד 1  
בתגובה להודעה מספר 1
 
   http://n.rotter.net/User_files/nor/40098510485b6e22.jpg


ßarak,


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

   21:22   17.01.04   
אל הפורום  
  3. לא עושים פה שיעורי בית  
בתגובה להודעה מספר 2
 
   תנסה לפתור וננסה לעזור לך!


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Mystics  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 18.3.02
45200 הודעות, 1 פידבק
   22:21   17.01.04   
אל הפורום  
  5. זה לא שלי...  
בתגובה להודעה מספר 3
 
  


ßarak,


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

   19:27   18.01.04   
אל הפורום  
  6. תשובה:  
בתגובה להודעה מספר 2
 
   תשובה:

האלגוריתם מה-בודק? בודק שרצף התווים הנקלטים מקיים את התנאי הבא:
בהתחלה יש רצף של זוגות התווים AB, אחריהם רצף של תווי C שאורכו זהה למספר הזוגות AB, ובסוף מופיע התו D.

דוגמה לקלט תקין:
ABABABCCCD

דוגמה לקלט לא תקין:
ABABABCCD


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

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

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



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