מי מבין ב C

מי מבין ב C ../images/Emo35.gif ../images/Emo26.gif

זקוק לעצה .. יש לי פונקציה שמקבלת מחרוזת .. אני צריך בפונקציה להצפין את המחרוזת, להפוך אותה לרצף אותיות אחרות ממה שהיא .. אבל להשתמש בחוקיות.. ז"א בכל פעם שהפונקציה תקבל את אותה מחרוזת היא תהפוך אותה למילה זהה .. יש רעיונות ?
 

ל א ק י

New member
לא כל כך קשור לC ../images/Emo3.gif

סתם רעיון איך להצפין מחרוזת:$ אממ אם זה לא צריך להיות מסובך או משו, אתה יכול להפוך כל אות לאות הגדולה ממנה או משו.. נגיד אמ a לb, b לc.. ורווח להפוך ל0 נגיד P: או להעיף ת'רווח ולשמור במערך את המקום שצריך להיות בו רווח, ואחרי זה לשחזר;[ [מה! היה לי תרגיל כזה במתכונת ועשיתי טעות מפגרת בו ואני זוכרת עד היום
]
 

Trranger

New member
יש המון אפשרויות

אפשר לקחת את הקוד ASCII... לעלות אותו בחזקה שלישית, להוסיף 2, להכפיל אותו במספר השניות שכגרע בשעון. ואז למחוק כל פעם 255 עד שמגיעים למספר שהוא בין 1 ל255. ואז להציג את התו שקוד הASCII שלו שווה למספר... לדוגמא a אם אני לא טועה זה 65... חזקה שלישית > 274625 להוסיף 2 > 274627 להכפיל בשניות(נניח שכרגע יש 5 שניות > 1373135 להשאיר מספר בין 1 ל255 > 215 להוציא תו > ╫ סתם דוגמא, אפשר לעשות מה שרוצים עם אותו רעיון. זתומרת להוציא קוד ASCII, לבצע עליו סדרת פעולות ולהוציא תו אחר.
 
בזה ../images/Emo26.gif

for (P=str; *P != NULL; P++) { if (*P >= 'A' && *P <= 'A') *P = ('Z' - *P) % ('Z' - 'A') + 'A'; else if (*P >= 'a' && *P <= 'z') *P = ('z' - *P) % ('z' - ' a') + 'a'; else if (*P >= '0' && *P <= '9') *P = ('9' - *P) % ('9' - ' 0') + '0'; }​
 
למעלה