עבור לתוכן

שלום, צריך עזרה בתרגיל יצירת היסטוגרמה בc++

Featured Replies

פורסם

שלום, אני חדש פה וגם חדש לגמרי בשפות תכנות, והקיץ הזה לקחתי קורס בc++ במכללה שבה אני לומד. קיבלנו שיעורי בית כשאחת השאלות היא:

"הגדר מערך עם 4 מספרים וקלוט לתוכו ערכים בטווח 10-0.

הדפס למסך את הפלט הבא, בהתאם להוראות הבאות:

יש להדפיס למסך פלט כך שעבור כל ערך במערך תהייה עמודה שבתחתיתה הערך ומעליה כוכביות כערך.

לדוגמא עבור המערך {5 6 2 4} יודפס הפלט הבא: (בתמונה המצורפת)."

אשמח אם מישהו יוכל לתת לי איזשהו כיוון כי בינתיים אני אבוד.

תודה מראש

פורסם
  • מחבר

אני ממש בהתחלה אין לי מושג איך להתחיל האמת.. זה מה שעשיתי בינתיים:

#include<iostream>using namespace std;


const int SIZE = 4;


void main()
{
int arr[SIZE], i, max=0;


cout<<"Please enter 4 numbers between 0-10: ";


for(i=0; i<SIZE; i++)
{
cin>>arr[i];
}

פורסם

אוקי, עכשיו תחשוב כמה שורות של כוכביות אתה צריך להדפיס, ואיך מחליטים מה צריך להדפיס בכל שורה.

פורסם
  • מחבר

אני יודע שצריך 4 שורות.. מקבלים 4 מספרים וכל מספר נכנס לarr[0] וכן הלאה ובכל שורה מספר הכוכביות שמדפיסים הוא לפי המספר שנקלט. אבל איך כותבים את זה?

פורסם

צריך 4 עמודות. הבעיה היא שהדפסה מתבצעת בשורות, ולא בעמודות. כמה שורות צריך?

פורסם
  • מחבר

השורות צריכות להיות לפי המספר הכי גבוה שנקלט

פורסם
  • מחבר

אוקיי עשיתי את זה:

	max = 0;

for(i=0; i<SIZE; i++)
{
if(arr[i]>max)
{
max=arr[i];
}
}

עכשיו לפי מה שהבנתי צריך לעשות לולאות בתוך לולאות כשכל לולאה מייצגת את השורות והעמודות או משהו כזה אבל לא הנבתי את זה בכלל. לא הבנתי איזה לולאה מייצגת כל דבר ואיך זה עובד בכלל.

פורסם

סבבה, אנחנו מתקדמים.

כאמור, מדפיסים שורה אחר שורה. תסתכל לדוגמה על השורה הראשונה שאתה מדפיס (השורה העליונה ביותר). איך תחליט מה להדפיס?

פורסם
  • מחבר

את הכוכבית הראשונה של המספר הכי גבוה. אבל איך אני עושה את הרווחים האלה?

פורסם

מי אמר שיש רק מספר אחד הכי גבוה? יכול להיות שהמספרים הם 1 4 1 4.

פורסם

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

אחרי זה תוכל לשנות את הפלט שיראה כמו שצריך

פורסם
אל תבלבל. למצוא את הגבוה ביותר בהחלט יספיק.

עריכה: צודק, מחקתי.

נערך על-ידי eido300

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים