doron amir
 
דואר אלקטרוני:
 
 
סיסמה:
 
 
 
 
 
 
לוח פגישות
 
|
 
איזכור סיסמא
 
עברית
 
|
 
english
 
|
 
русский
 
 
 
doron amir
 
קורסים ותרגול
 
עמוד הבית
 
חבילות
הדרכה
 
החשבון שלי
 
אודות
דורון אמיר
 
צור קשר
 
מאגר תרגילים ופתרונות
 
מאמרי גולשים
 
קורס אנדרואיד

[001] תרגיל ב #C ( לקבלת פרויקט רשום "פרויקט" בתיבת החיפוש )


[001] תרגיל ב #C ( לקבלת פרויקט רשום "פרויקט" בתיבת החיפוש ) בשיעור וידאו

 
תרגיל 001 מתוך אוסף תרגילים ב #C מומלץ למתכנתי NET. מתחילים המתכוננים להצלחה בבחינות ובראיונות עבודה כולל הכנה למבחני מיון ליחידת 8200 , ממר"מ , יחידת ראם (השב"כ) ועוד. תרגיל זה מיועד לאימון ותרגול ויש לבצע אותו בהתאם ללוח הזמנים המותאם לתרגיל זה ולחזור על התרגול עד לרמת שליטה מלאה בקוד.

תרגיל  מס'  001 תכנית ליצירת מספר שלם ללא כפילויות וללא מערכים ב #C 

  

צור תכנית אשר מציגה מספר שאינו כולל כפילות של ספרות  אשר נגזר ממספר כללי (מסוג int ) הכולל כפילות של ספרות (ללא שימוש במערכים ולולאות ) לדוגמא : אם הקלדנו את המספר 211275 המספר שיגזר יהיה 2175 כלומר לאחר ביטול הכפילות של הספרות 1 ו- 2 .

  

בנוסף לכך התכנית תדפיס למסך את הספרות של המספר המקורי ואת סכום הספרות ומספר הספרות.לדוגמא : הספרות של המספר 211275 הן 2,1,1,2,7,5  וסה"כ הסכום הינו 18 ויש סה"כ 6 ספרות והמספר ללא כפילויות הינו 2175

  

  

תקציר נוסח ראיון עבודה \ בחינה \ מבחני מיון \ Senario :

 

כמתכנת במכון ויצמן הינך חלק מצוות תוכנה אשר עובד על יישום הצפנה וקידוד נתונים אשר מועברים ברשת  אבטחה.אלגוריתם ההצפנה אמור לקולט מספרים שלמים ולבטל את הכפילויות (הספרות שמופיעות יותר מפעם אחד ) כולל שימוש בסכום הספרות המקורי ומספר הספרות של המספר המקורי. אתה מתבקש לכתוב את היישום אשר מבצע את הפעולות שהוזכרו אך בהתאמה להגבלות הבאות :

 

1.אין להשתמש במערכים מכל סוג שהוא.

2.אין לאחסן את המספר כ string (רק כ- int ).

3.אין להשתמש בלולאות מכל סוג שהוא.

4.אין להשתמש במחלקות עזר מלבד Console לקליטה והדפסת הנתונים.

5.אין להקליד נתונים נוספים מעבר למספר המיועד.

6.יש להשתמש בפעולות חיבור,חיסור,כפל,חילוק בלבד (ללא מודולו  %  חילוק וקבלת השארית )

 

לדוגמא :

  

image_1  

  

לוח זמנים מומלץ : 00:00-00:30

 

פתרון כללי :

 

 

 

 

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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
using System;
 
namespace nsDoronAmir
{
    public class MyClass
    {
        public static void Main()
        {
            Console.Write("Enter a Number (int):");
            int x=  int.Parse( Console.ReadLine());
            Calculations(x);
 
            Console.ForegroundColor = ConsoleColor.Red;
            Console.WriteLine("You have {0} digits ",counter);
            Console.WriteLine("The sum of digits is {0}", sum);
            Console.ForegroundColor = ConsoleColor.Yellow;
            Console.WriteLine("Your number (without duplication) is  {0}    ", num);
            Console.ForegroundColor = ConsoleColor.Gray;
        }
 
        static int counter = 1;
        static int sum = 0;
        static int num =0;
        static bool flag0 = false;
        static bool flag1 = false;
        static bool flag2 = false;
        static bool flag3 = false;
        static bool flag4 = false;
        static bool flag5 = false;
        static bool flag6 = false;
        static bool flag7 = false;
        static bool flag8 = false;
        static bool flag9 = false;
 
        public static int Calculations(int temp)
        {
         int x = temp;
 
         temp /=10;
 
         int y = (x - temp * 10);
 
            if (temp > 0)
            {
                counter++;
                Calculations(temp);
            }
 
            sum +=y;
            Console.WriteLine(y);
 
            BuildNumberWithoutDuplication(y);
 
            return y;
        }
 
        public static void BuildNumberWithoutDuplication(int y)
        {
            if ((y == 1 && !flag1))
            {
                num = num * 10 + y;
                flag1 = true;
            }
            if ((y == 2 && !flag2))
            {
                num = num * 10 + y;
                flag2 = true;
            }
            if ((y == 3 && !flag3))
            {
                num = num * 10 + y;
                flag3 = true;
            }
            if ((y == 4 && !flag4))
            {
                num = num * 10 + y;
                flag4 = true;
            }
            if ((y == 5 && !flag5))
            {
                num = num * 10 + y;
                flag5 = true;
            }
            if ((y == 6 && !flag6))
            {
                num = num * 10 + y;
                flag6 = true;
            }
            if ((y == 7 && !flag7))
            {
                num = num * 10 + y;
                flag7 = true;
            }
            if ((y == 8 && !flag8))
            {
                num = num * 10 + y;
                flag8 = true;
            }
            if ((y == 9 && !flag9))
            {
                num = num * 10 + y;
                flag9 = true;
            }
            if ((y == 0 && !flag0))
            {
                num = num * 10 + y;
                flag0 = true;
            }
        }
    }
}

 

 

חזרה לרשימת השיעורים הטקסטואליים
 
 
אפליקציות אפל
אפליקציות אנדרואיד
001 קורס אנדראויד באתר