1Danke
ERLEDIGT
NEIN
NEIN
ANTWORTEN
6
6
ZUGRIFFE
3339
3339
EMPFEHLEN
-
11.07.07 14:21 #1
Hi!
Ich habe ein Array n, mit 16 Plätzen. Diese werden nach und nach vom Programm befüllt. Nun soll ganz zum Schluss eine Summe aus diesen Werten errechnet werden, aber nur, wenn alle Werte größer 1 sind (also praktisch, wenn kein Feld leer ist, n ist nämlich einfach nur ein Zähler für verschiedene Funktionen).
Zuerst hatte ich nur ein 5er Array. Da habe ich dann gesagt
If n(1) and n(2) and (n3) usw. > 1 then Summe berechnen
Aber ich möchte jetzt eigentlich nicht 16 Array Felder mit AND verknüpfen... da bin ich ja ewig dran.
Gibt es einen Befehl, der einfach schaut, ob alle Felder im Array > 1 sind?
LG JoeyNur sprechenden Menschen kann geholfen werden...
-
Naja im normalfall würdest du doch einen Array der größe nach durch eine Schleife auslesen.
In Pseudocode würde das so aussehen (kann VB.Net nicht)
Code :1 2 3 4 5 6 7 8 9 10 11 12
int Summe =0; for(int i=0; i < Array.Anzahl, i++) { if(Array[i] > 1) { Summe = Summe + Array[i]; } } Schreib das in VB.NET und es müsste klappen.
-
11.07.07 14:44 #3
- Registriert seit
- Aug 2001
- Ort
- Österreich, Stmk, Graz
- Beiträge
- 2.783
Hallo.
Mag jetzt nicht irgendwie VB.net zusammenklecksen, deswegen in C#.
Einfach das Array in einer Schleife durchgehen. Falls eine Zahl ungültig ist, setzt du eine boolsche Variable auf false, und brichst die Schleife ab.
In der Schleife kannst auch gleich die Summe addieren, damit du nicht nachher noch eine Schleife brauchst. Die boolsche Variable gibt dir dabei an, ob die Summe korrekt ist, oder nicht.
lg, Alex
Code csharp:1 2 3 4 5 6 7 8 9 10 11 12 13 14
int[] numbers= new int[] { 1, 2, 3, 4, 5 }; bool valid = true; int count = 0; for (int i = 0; i < numbers.length; i++) { if (numbers[i] <= 1) { valid = false; // eine zahl kleiner als 1 - Daten "ungültig" break; // schleife abbrechen.. } count += numbers[i]; }
With the first link the chain is forged. The first speech censored, the first thought forbidden, the first freedom denied, chains us all irrevocably.
Aaron Satie
Legends... are the spice of the universe, Mr. Data, because they have a way of sometimes coming true.
Captain Jean-Luc Picard, Stardate ~41294.5
Tutorials.de chattet. Hier gibts auch .net Support ^^
Klickt auf chattet und nutzt den Webchat, oder verbindet euch zu irc.tutorials.de - Channel #Tutorials.de
(moo)blog furred.net // SiteInfo für WP7 // Pastebin für WP7 // BlogEngine.net Extensions
-
13.07.07 10:55 #4
Okay, ich habe versuch die Schleife in VB.net nachzubauen. Aber ich bekomms nicht hin.
Für was steht denn bei dir "numbers"? Ist das mein Array?
Bisher lautet meine Schleife so:
Dim valid As Boolean = True
Dim i As Integer
For i = 0 To n.Length
If n(i) <= 1 Then valid = False : Exit For
If valid = True Then summe1 = summe1 + n(i)
Next
Aber irgendwie setzt der jetzt valid immer auf false. Ich blick nicht durch. Also, mein Array heißt n mit dem Index 0-5.Nur sprechenden Menschen kann geholfen werden...
-
13.07.07 11:34 #5
- Registriert seit
- Aug 2001
- Ort
- Österreich, Stmk, Graz
- Beiträge
- 2.783
Zum Glück haben wir ja einen C#-to-VB.net Converter verlinkt, hab mein Snippet mal übersetzt, und auch ausprobiert.
Code csharp:1 2 3 4 5 6 7 8 9 10 11 12
Dim numbers As Integer() = New Integer() {5, 2, 3, 4, 5} Dim valid As Boolean = True Dim count As Integer = 0 For i As Integer = 0 To numbers.Length - 1 If numbers(i) <= 1 Then valid = False Exit For End If count += numbers(i) Next
Sollte gehen, und ja, numbers ist das Array.
With the first link the chain is forged. The first speech censored, the first thought forbidden, the first freedom denied, chains us all irrevocably.
Aaron Satie
Legends... are the spice of the universe, Mr. Data, because they have a way of sometimes coming true.
Captain Jean-Luc Picard, Stardate ~41294.5
Tutorials.de chattet. Hier gibts auch .net Support ^^
Klickt auf chattet und nutzt den Webchat, oder verbindet euch zu irc.tutorials.de - Channel #Tutorials.de
(moo)blog furred.net // SiteInfo für WP7 // Pastebin für WP7 // BlogEngine.net Extensions
-
13.07.07 14:19 #6
Okay, danke. Das hat jetzt super funktioniert.
Nun habe ich noch eine Frage: Kann ich auch immer zwei Zahlen aus dem Array miteinander vergleichen und wenn die gleich sind, dann addieren?
Vielleicht weiß dazu auch noch jemand eine Lösung...
LG JoeyNur sprechenden Menschen kann geholfen werden...
-
13.07.07 14:38 #7
- Registriert seit
- Aug 2001
- Ort
- Österreich, Stmk, Graz
- Beiträge
- 2.783
Ein bissl selber Nachdenken musst schon,.. und wenn du dann was willst, musst schon ein wenig genauer sein.
Hab mir halt was aus den Fingern gesaugt.. Je 2 Zahlen die hintereinander im Array stehen werden entweder Addiert oder Subtrahiert. Ausschlaggebend dafür ist, welche der beiden Zahlen größer ist.
Die einzelnen Ergebnisse werden in einer (generischen) Liste gespeichert, und zusätzlich wird auch noch alles aufsummiert.
Viel Spass..
C#
Code csharp:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
List<int> partialResult = new List<int>(); int[] numbers =new int[] { 55, 66, 99, 11, 22, 66 }; int result = 0; int current = 0; for (int i = 0; i < numbers.Length -1; i++) { if (numbers[i] < numbers[i+1]) { current = numbers[i]+numbers[i+1]; } else { current = numbers[i]-numbers[i+1]; } partialResult.Add(current); result += current; }
VB.net (übersetzt)
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Dim partialResult As New List(Of Integer)() Dim numbers As Integer() = New Integer() {55, 66, 99, 11, 22, 66} Dim result As Integer = 0 Dim current As Integer = 0 For i As Integer = 0 To numbers.Length - 2 If numbers(i) < numbers(i + 1) Then current = numbers(i) + numbers(i + 1) Else current = numbers(i) - numbers(i + 1) End If partialResult.Add(current) result += current NextWith the first link the chain is forged. The first speech censored, the first thought forbidden, the first freedom denied, chains us all irrevocably.
Aaron Satie
Legends... are the spice of the universe, Mr. Data, because they have a way of sometimes coming true.
Captain Jean-Luc Picard, Stardate ~41294.5
Tutorials.de chattet. Hier gibts auch .net Support ^^
Klickt auf chattet und nutzt den Webchat, oder verbindet euch zu irc.tutorials.de - Channel #Tutorials.de
(moo)blog furred.net // SiteInfo für WP7 // Pastebin für WP7 // BlogEngine.net Extensions
Ähnliche Themen
-
VB6 Datei komplett auslesen und Teilstring extrahieren
Von fixmer im Forum Visual Basic 6.0Antworten: 8Letzter Beitrag: 16.03.08, 15:42 -
Tabelle komplett auslesen
Von PizzaJT im Forum Relationale DatenbanksystemeAntworten: 6Letzter Beitrag: 07.06.06, 14:44 -
Request komplett auslesen
Von Spakkn im Forum PHPAntworten: 7Letzter Beitrag: 14.03.06, 12:42 -
Page Source komplett auslesen
Von RedWing im Forum Javascript & AjaxAntworten: 2Letzter Beitrag: 26.07.05, 19:12 -
Parameter eines URL komplett auslesen?
Von mingelburns im Forum PHPAntworten: 4Letzter Beitrag: 22.06.04, 07:08





Zitieren

Login





