מבוא למדעי המחשב
        
        
        תרגיל 1
        
        
        מגיש:
        אמר יריב.
        
        
        קבוצה:
        א.
        
        
         
        
        
        
          - 
            
אלגוריתם
            לפתרון משוואה לינארית בנעלם אחד (ax+b=0).
            
            
 
        
        ·       
        פעולות
        בסיסיות: (גם
        לתרגיל 2)
        
        
        o      
        השמת
        ערך למשתנה.
        
        
        o      
        בדיקת
        ערכי משתנה.
        
        
        o      
        חישוב
        ביטוי חשבוני והשמת ערך למשתנה; פעולות
        מותרות: חיבור חיסור,כפל, חילוק שלמים,שארית.
        
        
        o      
        ביצוע
        לולאה כל עוד תנאי לוגי מתקיים.
        
        
         
        
        
        קלטים
        מייצגים:
        
        
         
        
        
        
          
            
              | 
                 x
                
                 
               | 
              
                 פלט
                
                 
               | 
              
                 b
                
                 
               | 
              
                 a
                
                 
               | 
            
            
              | 
                 -2
                
                 
               | 
              
                 למשוואה
                יש פתרון יחיד והוא
                
                 
               | 
              
                 10
                
                 
               | 
              
                 5
                
                 
               | 
            
            
              | 
                 0
                
                 
               | 
              
                 למשוואה
                יש פתרון יחיד והוא
                
                 
               | 
              
                 0
                
                 
               | 
              
                 3
                
                 
               | 
            
            
              | 
                  
                
                 
               | 
              
                 למשוואה
                אין פתרון ממשי
                
                 
               | 
              
                 2
                
                 
               | 
              
                 0
                
                 
               | 
            
            
              | 
                  
                
                 
               | 
              
                 למשוואה
                יש אינסוף פתרונות
                
                 
               | 
              
                 0
                
                 
               | 
              
                 0
                
                 
               | 
            
          
         
         
        
        
        
        
          - 
            
אלגוריתם
            הבודק האם ספרותיו של מספר מהוות סדרה
            עולה משמאל לימין.
            
            
 
        
        
        
                                
        א.        
        הגדר את המשתנים:
        
        
         Number-מייצג
        את המספר הנבדק.
        
        
        Max-שומר
        על הערך הגבוה האחרון.
        
        
        Lsd-שומר
        את הספרה האחרונה (Lees Significant
        Digit)
        
        
        Temp-שומר
        את המנה לאחר החלוקה.
        
        
                                         
        ב.        
        קלוט מספר לתוך Number.
        
        
        
                                         
        ג.         
        בדוק האם Number
        שלילי?
        
        
        אם
        כן – הדפס "הקלט שלילי ולכן התוכנית
        הופסקה", וסיים התוכנית.
        
        
                                         
        ד.        
        אם לא – המשך לשלב הבא
        
        
                                        
        ה.        
        עדכן: Lsd=0. 
        
        
        הכנס
        ל-Temp את המנה (מספר
        שלם) מחלוקת Number
        ב-10.
        
        
        הכנס
        ל-Max את השארית (מספר
        שלם) מחלוקת Number
        ב-10.
        
        
                                         
        ו.         
        בדוק האם Temp=0?
        
        
        אם
        כן – הדפס "ספרות המספר שהוקלד מהוות
        סידרה עולה", וסיים התוכנית.
        
        
        אם
        לא – בצע:
        
        
                                                                      
        i.     
        Lsd מקבל את
        השארית מחלוקת Temp
        ב-10.
        
        
                                                                    
        ii.     
        Temp מקבל את
        המנה מחלוקת Temp
        ב-10.
        
        
                                                                   
        iii.     
        בדוק האם Lsd<Max?
        
        
        אם
        כן – הצב את ערך Lsd
        לתוך Max וחזור
        לשלב VI.
        
        
        אם
        לא – הדפס "ספרות המספר שהוקלד אינן
        מהוות סידרה עולה", וסיים 
        
        
        התוכנית.
        
        
         
        
        
        קלטים
        מיצגים:
        
        
        
         
        
        
         
        
        
         
        
        
         
        
        
        
        
          - 
            
תרגום
            ביסיסים
            
            
 
        
        
        
                                
        א.        
        לבסיס 10:
        
        
        38A16=3*162+8*161+10*160=90610
        
        
        4768=4*82+7*81+6*80=31810
        
        
        100110112=27+24+23+21+20=15510
        
        
                                         
        ב.        
        לבסיס 2:
        
        
        6D1A16=0110
        1101 0001 1010 =1101101000110102
        
        
        17448=001
        111 100 100 =11111001002
        
        
        48510=485:2=242.5
        ®
        1
        
        
                   
        242:2=121   ®
        0
        
        
        
        
         
        
        
        59810=598:16=37+6/16
        
        
        
           
        37:16=2+5/16
        
        
                   
        5:16=5/16
        
        
         
        
        
        5468=1
        0110 01102=16616
        
        
         
        
        
        
          - 
            
המספר
            הבינארי הגדול ביותר בעל K
            ספרות הוא המספר שבו כל הספרות הם 1
            וכדי לחשבו אפשר להשתמש בנוסחה של סכום
            של סדרה הנדסית שבה q=2,a1=1
            ו n=K. 
            
            
 
        
        ז"א
        ערך המספר הוא: Sn=1*(2k-1)/1.
        
        
        
        
        
5.       
        קוד התוכנית tr1_q5.cpp:
        (מצורף בדיסקט)
        
        
         
        
        
        /*
        
        
         
        Module:tr1_q5.cpp     
        <- tr=Targil , q=question
        
        
         
        Author: Yariv Amar
        
        
         
        
        
         
        What?
        
        
         
        Prints in 2 lines my name, Id number and course name.
        
        
         
        
        
         
        How?
        
        
         
        using cout and "\n"
        
        
         
        
        
        /*
        
        
         
        
        
        #include
        <iostream.h>
        
        
         
        
        
        void
        main()
        
        
        }
        
        
             
        cout<<"Yariv
        Amar ID Nu. 2731300\nBasic C++ Programming course\n";
        
        
        {
        
        
         
        
        
        פלט
        התוכנית:
        
        
        Yariv
        Amar ID Nu. 2731300
        
        
        Basic
        C++ Programming course
        
        
         
        
        
        
          - 
            
תוכן
            הקובץ:  header.txt
            
            
            
 
        
        /*
        
        
         
        Module:
        
        
         
        Author: Yariv Amar
        
        
         
        
        
         
        What?
        
        
         
        
        
         
        
        
         
        How?
        
        
         
        
        
        /*