Summe ganze zahlen mit Hilfe einer Schleife in c#
Ich bin neu in der Programmierung und ich denke, ich habe verwirrt mich ich versuche eine Schleife zu erstellen, die Benutzer auffordert, für ganze zahlen, wenn die Eingaben des Benutzers wird eine ganze Zahl größer als 100 ist dann die Konsole zeigt die Menge der ganzen zahlen der Benutzer eingegeben hat und die Summe dieser zahlen. Ich weiß, es ist basic, aber ich kann nicht herausfinden, wo ich falsch gelaufen ist.
namespace Wip
{
class Program
{
static void Main(string[] args)
{
string strNum1, strNum2;
int num1, num2;
int i = 0;
int sum =0 ;
Console.WriteLine("Please enter a integer between 1 and 100"); //asks for user input
strNum1 = Console.ReadLine();
num1 = int.Parse(strNum1);
do //repeat asking for user input
{
Console.WriteLine("Please enter another integer between 1 and 100"); //asks for user input
strNum2 = Console.ReadLine();
num2 = int.Parse(strNum2); //input is stored as num2
sum = num2; //store num2 in sum
i++;
if (num2 >= 100) //if num2 int is greater than 100
{
sum = (num1 +num2 +sum); //do calculation
Console.WriteLine("No of integers entered is {0} {1}", i, sum); //output calculation
}
}
while (i < 100);
}
}
}
jede Hilfe würde geschätzt, danke an alle!
- Wenn der eingegebene Wert > 100 sollen es in der Summe, und sollte es auch beenden? Sollte es nicht beenden, sollte es weiterhin mit der vorhandenen Summe, oder von vorne beginnen? Jetzt Sie halten zu gehen, bis der Benutzer 100 zahlen. Aber im Allgemeinen ist Ihr problem, dass Sie nicht aus der Summe der Anzahl, wie Sie gehen und Sie verlieren einige auf dem Weg.
- Sie meinte wahrscheinlich
sum += num2;
, nichtsum = num2;
, weil letztere nur setzt Ihre Summe, die bei jeder iteration die aktuelle Nummer 2. - Haben Sie versucht, debugging durch Ihren code, um zu sehen, wo der Wert wird falsch gesetzt, oder die Verwendung von Haltepunkten zu stoppen Ausführung von code auf die relevanten Zeilen? Die Antworten werden Ihnen sagen, was Sie falsch gemacht haben, aber Sie wären besser dran, wenn Sie Debuggen Ihres eigenen Codes und fand Ihre Fehler.
- Ich bin nicht allzu vertraut mit += könnte jemand bitte erklären? Entschuldigung über die scheiß Fragen, aber ich bin neu in der Programmierung. Sie Jungs sind toll für nicht mich flamen! Danke!
- Es ist die additionszuweisungs-operator im Grunde
x += y;
knappx = x + y;
.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du bist auf dem richtigen Weg... ein paar Dinge:
Do... While
wird verwendet, wenn Sie wollen immer zu laufen durch den block mindestens einmal, so dass Sie Ihre ersten 'get' kann vom Nutzer in den block. Sie können code, was immer Sie wollen, passieren nach die Bedingung nicht direkt nach dem block, anstelle der überprüfung der gleichen Bedingung drin.Stellen Sie sicher, wenn Sie einfach nur mit
Parse
dass Sie wickeln Sie es in eintry...catch
, weil Ihre Benutzer könnte geben Sie alles (nicht nur zahlen). Persönlich ich in der Regel verwendenTryParse
statt.Schließlich, stellen Sie sicher, dass Sie im Vergleich zu den richtigen Variablen. Überprüfen Sie, dass
i < 100
halten looping bis 100 zahlen eingegeben wurden; Sie vergleichen möchten, wird die Eingabe des Benutzers statt.