תרגיל בC# שנתקעתי בו - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

תרגיל בC# שנתקעתי בו


Avrum

Recommended Posts

זה התרגיל שקיבלתי:

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

1. סכום המספרים שהוזנו

2. מכפלת המספרים האי זוגיים

3. ממוצע המספרים

4. סכום המספרים הזוגיים

זה הפתרון שכתבתי:


protected void Button1_Click(object sender, EventArgs e)
{
int []a = new int[5] {Convert.ToInt16(TextBox1.Text),
Convert.ToInt16(TextBox2.Text),
Convert.ToInt16(TextBox3.Text),
Convert.ToInt16(TextBox4.Text),
Convert.ToInt16(TextBox5.Text)};


int sum = a[0] + a[1] + a[2] + a[3] + a[4];


string eZugi;
string zugi;


for (int i = 0; i <= 4; i++){
if (a[i] % 2 == 1){
eZugi += Convert.ToString(a[i]);
}
else{
zugi += Convert.ToString(a[i]);
};
};


Label1.Text = "1. סכום המספרים: " + Convert.ToString(sum) +
"</br>2. אי זוגיים: " + Convert.ToString(eZugi) +
"</br>3. ממוצע: " + Convert.ToString(sum/5) +
"</br>4. זוגיים: " + Convert.ToString(zugi);


}

זה הקוד שכתבתי, והודעת השגיאה מופיעה בתמונה המצורפת

אשמח לעזרה אני חדש בתחום

קישור לתוכן
שתף באתרים אחרים

בדיוק מה שהוא אומר לך - אתה משתמש בערך של המשתנה zugi בלי ששמת בו שום ערך עדיין. כשאתה עושה =+ על משתנה אז זה מוסיף לערך הקיים שלו, ולכן חייב להיות לו ערך כלשהו.

נ.ב. למה אתה משתמש ב-Convert.ToInt16? הטיפוס int הוא Int32.

קישור לתוכן
שתף באתרים אחרים

שאלה נוספת באותו דיון.

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

הקוד נכון לעשיו נראה ככה:


protected void Button1_Click(object sender, EventArgs e)
{
if (TextBox1.Text == "" || TextBox2.Text == "" || TextBox3.Text == "" || TextBox4.Text == "" || TextBox5.Text == ""){
Label1.Text = "יש להזין מספרים בכל חמשת התאים";
}else {
int[] a = new int[5]{Convert.ToInt16(TextBox1.Text),
Convert.ToInt16(TextBox2.Text),
Convert.ToInt16(TextBox3.Text),
Convert.ToInt16(TextBox4.Text),
Convert.ToInt16(TextBox5.Text)};


int sum = a[0] + a[1] + a[2] + a[3] + a[4];


int eZugi = 1;
int zugi = 0;


if (a[0] % 2 != 0 || a[1] % 2 != 0 || a[2] % 2 != 0 || a[3] % 2 != 0 || a[4] % 2 != 0)
{
eZugi = 1;
}
else
{
eZugi = 0;
};


for (int i = 0; i <= 4; i++)
{
if (a[i] % 2 != 0)
{
eZugi *= a[i];
}
else
{
zugi += a[i];
};
};


Label1.Text = "1. סכום המספרים: " + Convert.ToString(sum) +
"</br>2. מכפלת המספרים האי זוגיים: " + Convert.ToString(eZugi) +
"</br>3. ממוצע: " + Convert.ToString(sum / 5) +
"</br>4. סכום המספרים הזוגיים: " + Convert.ToString(zugi);


if ((sum + (sum / 5)) > (eZugi - zugi))
{
Label2.Text = "(" + (eZugi - zugi) + ")סכום הסעיפים 1 ו3(" + (sum + (sum / 5)) + ") גדול ממהפרש הסעיפים 2 ו4";
}
else
{
Label2.Text = "(" + (eZugi - zugi) + ")סכום הסעיפים 1 ו3(" + (sum + (sum / 5)) + ") קטן ממהפרש הסעיפים 2 ו4";
};
};
}

אשמח לעזרה, תודה מראש...

קישור לתוכן
שתף באתרים אחרים

רשמתי סתם דוגמא רק בשביל שיבין את הקונספט, ולמה בציטוט? ניסיתי בקוד , עשיתי העתק הדבק לקוד שרשמתי ובמקום לרשום את הקוד זה רשם קוד html וcss

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

קישור לתוכן
שתף באתרים אחרים

ארכיון

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

×
  • צור חדש...