t0m3r פורסם 2002 בדצמבר 31 Share פורסם 2002 בדצמבר 31 שלום.יש לי בעיה, אני לא בדיוק יודע כיצד לפתור אותה. הנה היא:אני צריך לכתוב תוכנית, או חלק מתכנית שתקלוט את המספרים M ו-N, ומערך דו מימדי בגודל NxM.זאת אומרת, אם למשל אכניס M=5 ו-N=3 - אז יווצר לי מערך דו מימדי בגודל 3x5.תודה מראש! קישור לתוכן שתף באתרים אחרים More sharing options...
Asystole פורסם 2002 בדצמבר 31 Share פורסם 2002 בדצמבר 31 בבקשה:void main(){const int M=5;const int N=2;int Arr[M][N];} קישור לתוכן שתף באתרים אחרים More sharing options...
t0m3r פורסם 2002 בדצמבר 31 מחבר Share פורסם 2002 בדצמבר 31 תוכל להביר לי קצת יותר? מזה "const" בדיוק? ומה הוא עושה? אשמח שתסביר לי, תודה רבה. קישור לתוכן שתף באתרים אחרים More sharing options...
Ewingum פורסם 2002 בדצמבר 31 Share פורסם 2002 בדצמבר 31 const, שמעתה נקרא לו "קבוע" (constant) זהו מספר שאין ניתן לשנותו בתוכנית, והוא בעצם ערך שניתן להשתמש בו לכל אורך התוכנית. יעיל במיוחד אם אתה למשל עושה תוכנית שעושה משהו נגיד על מספר קבוע מראש, 1000 נגיד, ועושה מלא פעולות עליו. אז במקום לכתוב תמיד 1000 אתה יכול להגדיר const DDD ולכתוב DDD במקום (כמו כל משתנה), ככה גם אם תרצה להחליף את 1000 בבו נגיד 543 לא תצטרף לשנות מליון שורות אלא רק את ההצהרת const.זאתי הייתה חצי דקה עם הסבר שטחי על קבוע. קישור לתוכן שתף באתרים אחרים More sharing options...
t0m3r פורסם 2002 בדצמבר 31 מחבר Share פורסם 2002 בדצמבר 31 אהא, אני מבין.אנחנו משתמשים ב:#define n 5אז הערך הקבוע ש-n יקבל יהיה 5.זו לא ממש הבעיה. זה ממש קל, אבל עכשיו אני מבין שככה צריך לעשות, חשבתי שזה יותר מסובך.הבעיה הייתה בהבנת הנקרא.ארצה לנצל את השרשור הזה לעוד שאלה, שאודה לכם אם תסבירו לי אותה. אני אקצר;אםNUM=123456789 ו-N=3 > אז הפונקציה תחזיר > NUM=123456987זאת אומרת, הפונקציה הופכת את הסדר של N הספרות.אשמח אם תענו כמה שיותר לעומק.ד"א, שמי תומר, ונעים מאוד להיות בפורום שלכם.תודה קישור לתוכן שתף באתרים אחרים More sharing options...
Holy פורסם 2002 בדצמבר 31 Share פורסם 2002 בדצמבר 31 ממש אסור לך לעשות את מה שעשית הרגעגודל של מארך חייב להיות ידוע בזמן קומפלציהלא בזמן ריצהרק קומפלייר מפגר יקמפל תוכנית כזאת כי עוד אישהו יש constאבל בתכלס זה ממש אסורקשה לי להאמין שזה מתקמפל קישור לתוכן שתף באתרים אחרים More sharing options...
Asystole פורסם 2002 בדצמבר 31 Share פורסם 2002 בדצמבר 31 דווקא אין שום בעייה ב-Define!!!זה ממש כמו CONST... בזמן הריצה אין שוני בכלל... (בטח שלא בשביל דברים פשוטים כמו מטריצה...)ולשאלה השנייה:#include <iostream.h>void main(){unsigned int num,N;int i,temp=0;cout<<"Enter a number and length";cin>>num>>N;for (i=0;i<N;i++){temp=temp*10+num%10;num/=10;}for (i=0;i<N;i++){num*=10;}num+=temp;cout<<num;}אבל זה לא פועל על מספרים גדולים מדי, בגלל הבלות האינטג'ר. קישור לתוכן שתף באתרים אחרים More sharing options...
Holy פורסם 2002 בדצמבר 31 Share פורסם 2002 בדצמבר 31 Define אפשר לעשות בלי שום בעיהכי פקודה שמתחילה ב#היא הוראה לקומפליירבמקרה של#define N 3לפני קומפלציה הקומפלייר עובר על כל הקוד ושפוט מחליף כל מקום שכתוב N ב-3אני ממש לא בטוח שאפשר לעשות Constסתם int בטוח שאי אפשרלגבי להפוך סדר יש פתרון יפה ברקורסיה אם אתה מעוניין קישור לתוכן שתף באתרים אחרים More sharing options...
Asystole פורסם 2002 בדצמבר 31 Share פורסם 2002 בדצמבר 31 חשבתי שאתה לא בטוח שאפשר Defineוכן...אפשר Const... זה דרך בשוטה יותר לDefine... זה עושה בדיוק את אותו הדבר...ומישהו שלא ממש יודע מטריצות, לא ציפיתי שמחכה לתשובה ברקורסיה.. לכן נתתי תשובה בלולאות. קישור לתוכן שתף באתרים אחרים More sharing options...
t0m3r פורסם 2003 בינואר 2 מחבר Share פורסם 2003 בינואר 2 אני כולה תלמיד כיתה יא' במורחב מחשבים. רקורסיות זה מסובך מדי בשבילי.ובקשר לתכנית ש-Asystole כתב לי:מזה "count", "cin" וכל ה->> האלה? למה הם משמשים?אשמח לקבל הסבר.מה אומר ה-"unsigned" שבהתחלה?תודהנ.ב.אני מעוניין לקבל את הדרך הפשוטה ביותר לפתרון התרגיל, תוך כדי שימוש במהדר הכי פשוט שיש (TC).שוב,תודה רבה קישור לתוכן שתף באתרים אחרים More sharing options...
DarK_NaF פורסם 2003 בינואר 2 Share פורסם 2003 בינואר 2 זה סך הכל C++, בטח תלמד את זה בשנה הבאה...ת'כלס הקומפיילר שלך יקבל את זה כי הוא מיועד גם לC++...רק צריך להוסיף את ה #include<iostream.h>אבל אל תשתמש בזה....אסור לך במקצוע של C...פשוט תחליף את זה ב...cout<<" ", = printf(" ");cin>>x; = scanf("%d",&x); קישור לתוכן שתף באתרים אחרים More sharing options...
Asystole פורסם 2003 בינואר 2 Share פורסם 2003 בינואר 2 ה CIN ו COUT זה אפילו לא C++... זה סתם Include.מה שזה נותן זה נוחות כתיבה... זה הכל.אני רגיל להשתמש בזה... אז תסתדרו אם מה שיש :-)וה Unsigned זה כמו ערך מוחלט במתמטיקה.אינטג'ר רגיל הוא 4 בית, כלומר הוא בטווח של מ: 32,768- עד ל: 32,767.מה שה-Unsugned נותן, הוא טווח של מ-0 עד 65,535. הוא פשוט לא מקבל שליליים ובכך מכפיל את טווח החיוביים. קישור לתוכן שתף באתרים אחרים More sharing options...
bla7 פורסם 2003 בינואר 9 Share פורסם 2003 בינואר 9 טוב, קודם כל, הקונסט (קבוע) אפשרי בסי. בסי פלוס פלוס קיימת האפשרות (היותר טובה) של הדפיין, אשר מאפשר להגדיר גם את סוג הקבוע - דבר שעוזר מאוד בדיבגינג.לגבי השאלה השנייה שלך, תומר, הפתרון הוא פשוט.long x,y; /*Integer isn't enough for such numbers*/y=123456789;x=y%10;y/=10;while (y!=0) { x*=10; x+=y%10; y/=10; }מה שקורה הוא שאיקס מקבל כל פעם את הערך של עצמו כפול 10 + האחדות של וואי. אח"כ וואי מתחלק ב-10, עד שהוא מתאפס... קישור לתוכן שתף באתרים אחרים More sharing options...
Holy פורסם 2003 בינואר 16 Share פורסם 2003 בינואר 16 ה CIN ו COUT זה אפילו לא C++... זה סתם Include.מה שזה נותן זה נוחות כתיבה... זה הכל.זה מה שנקרא שטות דיברתcin/cout זה פונקציות שיש רק בc++ והן נמצאות בספריה של c++ iostream.hב-c רגיל או בשמו האמיתי ansi c אין לך cin/cout ועוד מלא דברים אחריםאלה תוספות של c++מכיוון שאתה עובד על קומפיילר של c++ שתומך גם ב-c אתה חושב שאתה מתכנת ב-c אבל אתה בעצם מתכנת ב-c++ קישור לתוכן שתף באתרים אחרים More sharing options...
womry פורסם 2003 בינואר 16 Share פורסם 2003 בינואר 16 זאת טעות להגיד שאין הבדל בין const ו- define, define זאת הוראה של ה- preprocessor.אין קשר לקומפילציה עצמה ואין שמירה שלהם בתור symbols ב- executable.לעומת זאת const מגדיר משתנים-קבועים, מוקצה להם שטח קבוע בזכרון, אבל אי אפשר לשנות אותו.ב- win32, קבועים כאלו נשמרים ב- Global area של הפרוסס.בדלפי, לדוגמא, יש project option בשם assignable contants, מה זה?אם אתה מסמן את זה, נחש מה אפשר לעשות לקבועים.עכשיו גם ב- c++, גם פונקציה כזאת: void func(const int* i (ובתוך הפונקציה יקרא const_cast<int*> אל תוך משתנה אחר כבר לא תהיה מוגנת.כמו שנאמר פה כל ה- streaming לא קיים ב- ansi c, וזה ממש לא סתם include.ה- constים ב- c++ באו בעיקר כדי שאנשים יפסיקו להשתמש ב- defineים, שהם בלתי אפשריים לדיבוג,וגם שוברים אינקפסולציה.אני ממליץ שתבדקו את הדבר הבא, קובץ ה- source הוא עם סיומת cpp, במקרה כזה VS מקמפל אותו תמיד כקובץ c++ קישור לתוכן שתף באתרים אחרים More sharing options...
Recommended Posts
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.