הרשם שאלות ותשובות רשימת חברים לוח שנה חיפוש הודעות מהיום סמן פורומים כנקראו

   
|!|

 
 
כלים לאשכול תצורת הצגה
Prev הודעה קודמת   הודעה הבאה Next
ישן 09-10-08, 23:54   # 9
SDF
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Sep 2006
מיקום: Negev
הודעות: 270

SDF לא מחובר  

אהלן,
אני רואה שכבר הסתדרת, אבל יחד עם זאת,
אם כל מה שאתה רוצה זה להדפיס מספרים בינריים, סדרות בינריות או כל דבר שמכיל 0 או 1,
הנה גרסא איטרטיבית:

קוד:
#include <stdio.h>


void printBin(int digits)
{
        int i = 0, j = 0;

        printf(">> Running for &#37;d digits, %d is the maximum number\n", digits, ( 1 << digits ) -1);
        for (i = 0 ; i < ( 1 << digits ); i++)
        {
                //printf("%d: ", i);
                for(j = digits - 1; j >= 0; j--)
                {
                        printf("%d ", i & ( 1 << j ) ? 1:0 );
                }
                printf("\n");
        }
}


int main()
{
        int digits = 0;
        printf("How many digits? ");
        scanf("%d", &digits);

        printBin(digits);

        return 0;
}
פלט:
קוד:
SDF@sigma:~> gcc test.c -o test
SDF@sigma:~> ./test
How many digits? 3
>> Running for 3 digits, 7 is the maximum number
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
SDF@sigma:~>
אלגוריטם איטרטיבי תמיד עדיף על זה הרקורסיבי מבחינת ביצועים.

ציטוט:
נכתב במקור על ידי Davieh צפה בהודעה
סתם הערה, כיום לא נפוץ השימוש בלולאות FOR ברקורסיה, אלה ב WHILE וכדומה, ככה לפחות באוניורסיטאות .. ולרמות קושי ..
כי בעצם הרקורסיה עושה את העבודה של הלולאות FOR לדוגמא רק בילדיהן ...
מאיפה הבאת את זה? תראה לי דבר אחד שאתה יכול לעשות עם while שאני לא אוכל לעשות עם for. כל אחד ומה שנוח לו.
__________________
FreeBSD, a *nix operating system

Last edited by SDF; 10-10-08 at 00:18.. סיבה: באג בקוד
  Reply With Quote
 

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 

כלים לאשכול
תצורת הצגה

חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 05:54.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ