120 likes | 135 Views
Practice exercises in C programming covering topics like loops, arithmetic series, factorial, exponentiation, and more. Enhance your coding skills with these challenges. Explore and understand C programming in depth.
E N D
Introduction to Programming in C תרגול 4 01.11.2010 Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel 1
מטרת התרגול • לולאות Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel
דוגמא: הדפסת כוכביות • התוכנית הבאה קולטת שלם n ומדפיסה n כוכביות: void main() { int n; printf/scanf while (n > 0) { printf(“*”); n--; } } • נעקוב אחר התוכנית, עבור: • n > 0 • n < 0 • n == 0 Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel
תרגיל 1: סדרה חשבונית • כתבו תוכנית אשר קולטת שלם n ומחשבת את הסדרההחשבונית 1 + 2 + … + n)השתמשו בלולאת (while void main() { int n, sum = 0; printf/scanf while (n > 0) { sum += n; n--; } printf } Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel
תרגיל 2: n! • כתבו תוכנית אשר קולטת שלם n ומחשבת את העצרת של n: 1 * 2 * … * n)השתמשו בלולאת (for void main() { int n, i, fac = ?; printf/scanf for (i = 1; i <= n ; i++) fac *= i; printf } Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel
תרגיל 4: מעקב • עקבו אחר מהלך התוכנית ונסו להבין מה היא מבצעת: void main() { int x, y, something = 0; printf(“Enter two numbers”); scanf(“%d%d”, &x, &y); while (x-- > 0) something++; for (;y > 0; y--, something--); printf(“%d”, something); } Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel
תרגיל 3: • כתבו תוכנית אשר קולטת שני שלמים x ו-y ומחשבת את x בחזקת y (השתמשו בלולאה כרצונכם) void main() { int x, y, pow = 1; printf/scanf while (y-- > 0) { pow *= x; } printf } Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel
תרגיל 5: לולאה כפולה • כתבו תוכנית שקולטת שלם n ומדפיסה ריבועnxn של כוכביות int n, i; printf/scanf printf(“\n”); for (i = 0; i < n ; i++) { int j; for (j = 0; j < n ; j++) printf(“*”); printf(“\n”); } Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel
תרגיל 6: טור לייבניץ • כתבו תכנית המחשבת את ערכו המקורב של PI (3.141592653) באמצעות טור לייבניץ ברמת הדיוק של 0.00001 δ = . טור לייבניץ הינו: Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel
Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel
תרגיל 7: להפוך מספר • כתוב תוכנית אשר קולטת מספר שלם ומדפיסה אותו הפוך • שימו לב שהמספר עלול להיות שלילי (התייחסו למקרה זה לאחר שתטפלו במקרה של מספרים חיוביים) Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel
int num, reversed_num = 0, sign = 1; // Get number printf/scanf // Treat negative number as positive and remember sign if (num < 0) } sign = -1; num = -num; } // Reverse number while (num > 0) { reversed_num = reversed_num * 10 + num % 10; num /= 10; } printf(“Reversed = %d\n”, reversed_num *= sign); Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel