Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Beheben Sie Fehler im angegebenen C++-Code.
Sie können ein Modell direkt abfragen und die zurückgegebenen Ergebnisse testen, wenn Sie verschiedene Parameterwerte mit der Cloud Console oder durch direkten Aufruf der Vertex AI API verwenden.
#include <iostream>
#include <exception>
using namespace std;
void check_sum_parity(int* arr, int arrayLength) {
for (int i = 0; i < arrayLength; i++) {
sum_of_numbers += arr[i];
}
if (sum_of_numbers % 2 == 0) {
cout << "Sum is odd." << endl;
}
else {
cout << "Sum is even." << endl;
}
}
int main(void) {
int arr[] = { 10, 2, 21, 50};
int arrayLength = sizeof(arr) / sizeof(int);
check_sum_parity(arr, arrayLength);
}
Antwort
#include <iostream>
#include <exception>
using namespace std;
void check_sum_parity(int* arr, int arrayLength) {
int sum_of_numbers = 0; // Initialize sum_of_numbers
for (int i = 0; i < arrayLength; i++) {
sum_of_numbers += arr[i];
}
if (sum_of_numbers % 2 == 0) {
cout << "Sum is even." << endl;
}
else {
cout << "Sum is odd." << endl;
}
}
int main(void) {
int arr[] = { 10, 2, 21, 50};
int arrayLength = sizeof(arr) / sizeof(int);
check_sum_parity(arr, arrayLength);
}
Erläuterung der Korrektur:
Im ursprünglichen Code ist ein Problem mit der Variable sum_of_numbers aufgetreten. Sie wurde ohne Initialisierung verwendet, was zu nicht definiertem Verhalten führte.
Die Lösung ist einfach: Wir initialisieren sum_of_numbers auf 0 am Anfang der check_sum_parity-Funktion. Dadurch wird sichergestellt, dass die Variable einen definierten Wert hat, bevor sie in der Schleife verwendet wird.
Hier seht ihr eine Übersicht des korrigierten Codes:
int sum_of_numbers = 0;: Diese Zeile initialisiert die Variable sum_of_numbers auf 0.
for (int i = 0; i < arrayLength; i++) { sum_of_numbers += arr[i]; }: Diese Schleife durchläuft das Array und fügt jedes Element der Variable sum_of_numbers hinzu.
if (sum_of_numbers % 2 == 0) { ... } else { ... }: Diese bedingte Anweisung prüft, ob sum_of_numbers gerade oder ungerade ist, und gibt die entsprechende Nachricht aus.
Jetzt berechnet der Code die Summe der Array-Elemente korrekt und bestimmt, ob die Summe gerade oder ungerade ist.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2024-06-26 (UTC)."],[],[]]