007המקורי פורסם 2013 בינואר 6 מחבר Share פורסם 2013 בינואר 6 דרך אגב הקוד שהעלתי לפה נחשב לולאה 1 או 2? עם 2 לולאות לימצוא תמיספר השני זה קל, אבל השאלה יתיחסה ללולאה אחת בילבד. קישור לתוכן שתף באתרים אחרים More sharing options...
שניצל פורסם 2013 בינואר 6 Share פורסם 2013 בינואר 6 איזו מין שאלה מגוחכת זו? תספור בעצמך. קישור לתוכן שתף באתרים אחרים More sharing options...
007המקורי פורסם 2013 בינואר 6 מחבר Share פורסם 2013 בינואר 6 שאלה נחמדה . מכניסים מיספר(אחד) - שתואם לאות באלף בית האנגלי דוגמא 3=C 2=B 1=A וכך אלה... לדוגמא : אם נקיש 3 האות A תופיע פעם אחת האות B פעמיים האות C שלוש פעמים כך יראה הפלט: ABBCCC הקוד ניראה לי יעיל מאוד #include "stdafx.h"#include <iostream>using namespace std;int main (){char A=65;int counter=0,i=0,in_count=0;cout << "number ! "<< endl;cin >> counter;for (i=0;i<counter;i++){in_count=i;in_count++;while (in_count >0){ cout << A ; in_count--;}A++;//} char f;cin >> f;return 0;} קישור לתוכן שתף באתרים אחרים More sharing options...
ירח אפל פורסם 2013 בינואר 6 Share פורסם 2013 בינואר 6 הקוד עובד, אבל לא הצלחתי להבין בשביל מה צריך כל כךהרבה ++ -- בתוך הלולאהדרך אגב, אתה יודע מה ההבדל בין ++i לבין i++?שים לב מה יש בתוך הfor אצלךיש הצבה התחלתית בin_counteיש תנאי סיוםויש הקטנה שלו ב1 ללי זה נשמע שצריך להיותשם for נוסף ולא whileבנוסף תמיד מומלץ לבצע בדיקת קלט. מה שאתה לא ביצעת כלל בתוכניות כאןככה אני הייתי בונה את התרגיל הזהinclude <iostream>using namespace std;int main(){ int num=0,i=1,j; char letter=65; cout << "Enter num (1-26)"<<endl; cin >> num; if ((num<1) || (num >26)) return 1;// בדיקת חוקיות הקלט do { for (j=0;j<i;++j) cout << letter;//הדפסה ++letter; } while (i++ < num); cout <<endl; return 0;} קישור לתוכן שתף באתרים אחרים More sharing options...
007המקורי פורסם 2013 בינואר 6 מחבר Share פורסם 2013 בינואר 6 הקוד שלך "סופר יעיל". לא שמתי לב (ידוע לי ההבדל) for (i=0;i<counter;++i){// in_count++; במקום ++iin_count=i;//in_count++; קישור לתוכן שתף באתרים אחרים More sharing options...
007המקורי פורסם 2013 בינואר 7 מחבר Share פורסם 2013 בינואר 7 אחרונה לבנתיים קלוט 2 מישתנים והדפס מלבן כוכביות בהתאם. דוגמא:עבור הקלט 3 , 6 הפלט יראה כך: ****** ****** ****** שני גירסאות לקוד. 1. #include "stdafx.h"#include <iostream>using namespace std;int main (){char star=42;int lines=0,i=0,num=0,start=0;cout << "number and lines! "<< endl;cin >> num;cin >> lines;for(i=0;lines>i;i++){start = num;while(start>0 ){cout << star ;start--;}cout << "\n";} char f;cin >> f;return 0;} קישור לתוכן שתף באתרים אחרים More sharing options...
007המקורי פורסם 2013 בינואר 7 מחבר Share פורסם 2013 בינואר 7 גירסה 2הקוד. #include "stdafx.h"#include <iostream>using namespace std;int main (){char star=42;int lines=0,i=0,num=0,start=0,j=0;cout << "number and lines! "<< endl;cin >> num;cin >> lines;for(i=0;lines>i;i++){for (j=0;num>j;j++){cout << star;}cout << "\n";}char f;cin >> f;return 0;} קישור לתוכן שתף באתרים אחרים More sharing options...
שניצל פורסם 2013 בינואר 7 Share פורסם 2013 בינואר 7 לא הבנתי למה אתה רושם 42 ולא פשוט '*'. בכל מקרה הגרסה השנייה יותר טובה - אין שום סיבה להשתמש ב-while איפה שמתאים for.ואני אחזור ואומר: הסידור של הקוד שלך על הפנים. שים כל פקודה בשורה משלה ותדאג להזחות נורמליות של הקוד. קישור לתוכן שתף באתרים אחרים More sharing options...
007המקורי פורסם 2013 בינואר 7 מחבר Share פורסם 2013 בינואר 7 אני עובד עכשיו עם שפת "c" visual express 2008איך אני משהה את מסך הפלט(איזו פקודה לירשום?)תודה קישור לתוכן שתף באתרים אחרים More sharing options...
007המקורי פורסם 2013 בינואר 7 מחבר Share פורסם 2013 בינואר 7 מצאתיhttp://www.ehow.com/how_6943222_run-program-visual-studio.html קישור לתוכן שתף באתרים אחרים More sharing options...
007המקורי פורסם 2013 בינואר 7 מחבר Share פורסם 2013 בינואר 7 בזמן הקימפול קיבלתי אזהרות.1>c:\users\q\documents\visual studio 2008\projects\test2\test2.cpp(9) : warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.1> c:\program files\microsoft visual studio 9.0\vc\include\stdio.h(306) : see declaration of 'scanf'1>c:\users\q\documents\visual studio 2008\projects\test2\test2.cpp(14) : warning C4996: 'getch': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _getch. See online help for details.1> c:\program files\microsoft visual studio 9.0\vc\include\conio.h(145) : see declaration of 'getch'זה באמת משנה(אני אמור לעבוד השמות החדשים?) קישור לתוכן שתף באתרים אחרים More sharing options...
007המקורי פורסם 2013 בינואר 8 מחבר Share פורסם 2013 בינואר 8 מערכים הגדר מערך בעל 10 איברים וקלוט לתוכו ציונים,הדפס תציונים מהסוף להתחלה.(לא קשה)הקוד #include "stdafx.h"#include <stdio.h>#include <conio.h>void main(){int grades[10],i=0;printf(" enter 10 grades !\n");for(i=0;i<10;i++)scanf("%d",&grades[i]);for (i=9;i>=0;i--)printf("%d\n",grades[i]);getch();} קישור לתוכן שתף באתרים אחרים More sharing options...
שניצל פורסם 2013 בינואר 8 Share פורסם 2013 בינואר 8 רק הערה קטנה: אל תכתוב void main אלא int main, ובסוף הקוד ;return 0 לשאלתך הקודמת: אין הבדל בין getch ו-getch_, זה רק השם. בעקרון זו לא פונקציה סטנדרטית ולא אמורים להשתמש בה, אבל רק לצורך תרגול זה בסדר (גם ככה אתה משתמש בזה רק כדי שהחלון לא יסגר בסוף התכנית). לגבי scanf_s, שימוש ב-scanf על מנת לקלוט מחרוזות (כלומר קליטת "s%") הוא שימוש לא בטוח (חשוף לגלישת חוצץ) ולכן מיקרוסופט ממליצים להשתמש בגרסה יותר בטוחה שלה, scanf_s (שמגבילה את גודל המחרוזת שניתן לקרוא מהמשתמש, ולכן ניתן ככה למנוע גלישת חוצץ). אם אתה לא משתמש ב-scanf על מנת לקלוט מחרוזות (אלא רק מספרים, לדוגמה) אז אין בכלל בעיה. בכל מקרה כיוון שמדובר רק בתרגילים בסיסיים גם זה לא חשוב במיוחד כרגע. קישור לתוכן שתף באתרים אחרים More sharing options...
007המקורי פורסם 2013 בינואר 8 מחבר Share פורסם 2013 בינואר 8 תודה רבה על הפירוט.שאני כותב int main---return 0אין לי השהיה של מסך הפלטפה הם כותבים את זה בלי ה int וזה עובדhttp://www.programmingsimplified.com/c/conio.h/getch יש לך במיקרה "טריק" אחר ת שיעבוד גם עם int?***************************************************הגדר מערך בן 10 איברים וקלוט לתוכו ציונים ,והדפס ציונים שהם מעל 90.הקוד #include "stdafx.h"#include <stdio.h>#include <conio.h>int main(){int grades [10],i=0;printf ("enter 10 grades!");for (i=0;i<10;i++)scanf ("%d",&grades[i]);for (i=0;i<10;i++)if (grades[i]>90)printf ("%d\n",grades[i]);getch();return 0;} קישור לתוכן שתף באתרים אחרים More sharing options...
שניצל פורסם 2013 בינואר 8 Share פורסם 2013 בינואר 8 זה שאפשר לכתוב קוד כלשהו לא אומר שזה נכון.התקן אומר שצריך int main.אם אין לך השהיה של המסך זה אומר ששמת את ה-return 0 במקום הלא נכון. דווקא בקוד שהעלית עכשיו זה בסדר.הקוד סבבה, אם כי כמו שאמרתי כבר קודם, כשיש לך for/if/while אז מומלץ תמיד לשים סוגריים מסולסלים, גם אם זו רק פקודה אחת. דהיינו:for (i=0;i<10;i++) { scanf ("%d",&grades[i]);} קישור לתוכן שתף באתרים אחרים More sharing options...
Recommended Posts
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.