wenn du eine kurzbeschreibung der aufgabenstellung liefern könntest, könnte ich dir sagen, ob ich dir helfen kann, oder ob du dich an jemand anderes wenden solltest.
weil z.b. von OO mit c++ habe ich nur eine beschränkte ahnung.
wenn du eine kurzbeschreibung der aufgabenstellung liefern könntest, könnte ich dir sagen, ob ich dir helfen kann, oder ob du dich an jemand anderes wenden solltest.
wenn du eine kurzbeschreibung der aufgabenstellung liefern könntest, könnte ich damit nichts anfangen, da ich sowieso kein c++ kann, also solltest du dich an jemand anderes wenden.
Schreiben sie ein Programm, welches vom Benutzer zwei 10-er Arrays verlangt. Testen Sie dann die beiden Arrays auf Gleichheit und geben Sie das Ergebnis (gleich/ungleich) für jedes Arrayelement mit gleichem Inde (zahl[x]) aus.
Wenn Sie diesen Teilschritt auf richtige Funktionsweise geprüft haben, schreiben Sie eine Funktion array_gleich(), die als Eingabeparameter zwei Arrays erhält und einen bool-Wert als Rückgabe liefert. (true = Arrays sind gleich), wenn alle Elemente mit gleichem Index in beiden Arrays gleich sind.
Ein Problem haben Sie noch: woher weiss die Funktion, wie viele Elemente die Arrays haben? Dies kann durch die Funktion nicht festgestellt werden. Sie müssen daher als weitere Parameter die Längen der beiden Arrays zusätzlich übergeben.
Vielleicht haben Sie ja auch vorgearbeitet?! Dann könnten Sie ja die Funktion über Zeigervariable auf die Array-Elemente zugreifen lassen. Das ist nur so ein Hinweis für eine "schönere" Lösung.
---
Das wärs also.. s Urschprungsprogramm gilt als Basis für ebe das neue, und das hani scho!
Jo, bin tatsächlich e Frau.. :-) und i han extra bim tschuder ganwortet wiler gseit het er hilft..
dat stimmt nid ganz:
du hast dich da etwas mit den trues und falses verheddert.
ich würde die funktion so schreiben:
bool array_gleich ( int * array1, int * array2, int lenght )
{
for (int i = 0; i < length, i++ ) // schlaufe ueber alle eintraege
{
if (array1[ i ] != array2[ i ]) return false; // gleiche werte
}
return true;
}
Tatsächlich.
Hm, da sind so di immerglichä dämlichä fähler. So wiä diä mit äm Index wo eis dänäbät lit.
Wür mä allerdings schnell findä wenn mäs kompiliert
kommentar zur aufgabenstellung: am schluss steht, man könne die funktionen über pointer auf die elemente zugreifen lassen.
ich verstehe das so, dass man statt mit array-indices mit pointern arbeiten solle. das ist aber keinesfalls eleganter, da es in diesem fall die sache erstens wesentlich umständlicher und unleserlicher macht, und gute compiler optimieren solche sachen schon selber.
#include <iostream>
using namespace std;
void einlesen(int *serscht, int *szweit)
{
cout << "Bitte geben sie die ersten zehn zahlen ein:";
for (int i = 0; i < 10; i++)
{
cin >> serscht[i];
}
cout << "Bitte geben sie die nächsten zehn zahlen ein:";
for (int i = 0; i < 10; i++)
{
cin >> szweit[i];
}
}
void vergleichen(int *serscht, int *szweit)
{
for (int i = 0; i < 10; i++ ) // schlaufe ueber alle eintraege
{
cout << i << ": ";
if (serscht[ i ] != szweit[ i ]) cout << "ungleich" << endl;
else cout << "gleich" << endl;
}
}
bool array_gleich ( int * array1, int * array2, int length )
{
for (int i = 0; i < length; i++ ) // schlaufe ueber alle eintraege
{
if (array1[ i ] != array2[ i ]) return false; // gleiche werte
}
return true;
}
int main(void)
{
int serscht[10];
int szweit[10];
einlesen (serscht, szweit);
vergleichen(serscht, szweit);
if (array_gleich(serscht, szweit, 10)) cout << "hey die sind jo glich!" << endl;
else cout << "mann, die sind voll nöd glich!" << endl;
}
so, das erfüllt jetzt glaub alle anforderungen. und es kompiliert sogar. krass, nöd?
wenn du eine kurzbeschreibung der aufgabenstellung liefern könntest, und ich das bier bekomme, hilft dir tschuder gerne weiter, ansonsten bekommst du mättä's fust.
ich glaube die dritte lautet: frag trotzdem, wenn du die konsequenzen nicht scheust, dich verteidigen und gegen einen möglichen surround-anfick wehren kannst, und es wird dir vielleicht geholfen, vielleicht sogar recht kompetent.
edit: dabei wurde sie nichtmal im geringsten angefickt hier, und es wurde sogar sofort hilfe angeboten. also luus würkli, do hemmer scho anders gseh.
"surround-anfick" - dieses Wort ist mir einfach nicht bekömmlich. Könntest du mal versuchen es beim nächsten Verwenden umzuformen in etwas mehr bundiges? Es trifft meines Erachtens die Situation _nicht ganz_.
yes, endlich en OT-biitrag. ha scho denkt da chäm nüme i däre bislang so ernschthafte hilfe-abüterei.
btw, ich habe mich echt kaputtgelacht, als ich all die schönen antworten gelesen habe.
für dich wäre übrigens die richtige antwort gewesen:
wenn du eine kurzbeschreibung der aufgabenstellung liefern könntest, könnte ich dir sagen, dass ich dir nicht helfen kann, weil ich mich über die anderen aufregen muss.
Wie will man jemanden helfen, wenn man nicht einmal weiss um was es geht. Geht es bei der Fragestellung um die Programmiersprache C/C++ im Allgemeinen oder geht es um eine speziefisches Problem das es zu Lösen gilt? Das ist ein riesen Unterschied.
Beispiel: Ich gehe in ein Forum mit lauter Kernelhacker/Systemadministratoren/Programmierer des Typus Linux. Ich schreibe ein Post in der Form: "Mein Linux läuft nicht. Kann mir mal einer helfen". Was glaubst du was passieren wird? Die würden mich auslachen! Wenn ich Glück habe, würde mir jemand empfehlen das Problem genauer zu beschreiben.
Das gleiche ist hier im vorliegenden Fall zu betrachten. Eine gute Fragestellung (nur so als Beispiel) wäre gewesen: "Ich muss für die Schule C/C++ lernen, jedoch verstehe ich die Aufgaben zu den Schleifen nicht genau. Ich habe die Bücher xyz und das Web-Tutorial www.abc.efg gelesen, das hat aber nicht weitergeholfen. Auch die Erklärungen des Lehrers waren Bullsh... Hätte jemand Lust/Zeit mir die Schleifen-Konstrukte näher zu erklären?"
jo. die forumbewohner die dann aber negativ antworten auf blöde fragen gehen davon aus, dass der entsprechende etwas daraus lernt und das nächste mal kluger fragt. ich glaube in einigen fällen denkt der fragende einfach "arrogante arschlöcher" und geht a) anderswo hin nerven oder b) lässt es sein..
und die leute wundern sich dann wieso noch nicht alle welt linux benutzt weils so n super os ist *hust*