Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Depurar o código C++ fornecido.
É possível consultar um modelo diretamente e testar os resultados retornados ao usar
diferentes valores de parâmetros com o console do Cloud ou ao chamar a
API Vertex AI diretamente.
#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);
}
Resposta
#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);
}
Explicação sobre a correção:
O código original apresentou um problema com a variável sum_of_numbers. Ele estava sendo usado sem ser inicializado, levando a um comportamento indefinido.
A correção é simples: inicializamos sum_of_numbers como 0 no início da função check_sum_parity. Isso garante que a variável tenha um valor definido antes de ser usada na repetição.
Confira o detalhamento do código corrigido:
int sum_of_numbers = 0;: essa linha inicializa a variável sum_of_numbers como 0.
for (int i = 0; i < arrayLength; i++) { sum_of_numbers += arr[i]; }: essa repetição é executada na matriz e adiciona cada elemento à variável sum_of_numbers.
if (sum_of_numbers % 2 == 0) { ... } else { ... }: essa instrução condicional verifica se o sum_of_numbers é par ou ímpar e mostra a mensagem adequada.
Agora, o código calculará corretamente a soma dos elementos da matriz e determinará se a soma é par ou ímpar.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-02-14 UTC."],[],[]]