Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

326
Visualizações
Necesito ayuda para corregir el código de tarea, entrada/salida de C++

Estoy en mi primer curso de introducción a Comp Sci. La tarea que tengo es ingresar un archivo .txt y luego generar un archivo .txt revisado. Los primeros problemas que tuve fueron solo con arreglar los directorios. Lo hice y todo salió bien con los archivos .txt , excepto que el profesor dice que tengo un error en la declaración de switch .

 #include <fstream> #include <iostream> using namespace std; int main() { int s = -2, a = 0, b = 0, NumIn; ifstream inFile("NumbersIn.txt"); if (inFile.fail()) { cout << "Unable to open file" << endl; return -1; } ofstream outFile("RevisedNumbers.txt"); while (!inFile.eof()) { inFile >> NumIn; cout << NumIn << endl; if (NumIn < 0) NumIn = -1; else if (NumIn > 0) NumIn = 1; outFile << NumIn << endl; switch (NumIn) { case -1: a += s; break; case 0: s += 1; case 1: b += s; } } outFile.close(); inFile.close(); cout << "A = " << a << endl; cout << "B = " << b << endl; cout << "S = " << s << endl; return 0; }

Producción:

 0 -2 9 14 -22 12 6 -9 12 13 -33 21 9 0 1 2 3 4 1 A = -4 B = -9 S = 0 Program ended with exit code: 0

Estoy incluyendo la pregunta de asignación aquí, así que la razón por la que usé s , a y b como números enteros:

Su programa requerirá los siguientes archivos
Archivo de entrada: NumbersIn.txt (adjunto a esta tarea)
Archivo de salida: NúmerosRevisados.txt
Su programa utilizará las siguientes variables:
int s=-2, a = 0, b = 0. NumIn;
Siempre que haya datos en el archivo de entrada, su programa leerá un número en la variable NumIn, lo imprimirá en la pantalla y luego determinará lo siguiente:
Si NumIn es negativo cámbielo a -1
Si NumIn es positivo cámbielo a +1
Si NumIn es cero, no haga nada
Escriba el nuevo valor de NumIn en el archivo de salida RevisedNumbers
Después de actualizar NumIN, use una declaración de cambio para basarse en el valor actual de NumIn
Cuando NumIn es -1, aumente el valor de A en S
Cuando NumIn es 0, incremente S en 1
Cuando NumIn es 1, aumente el valor de B en S
Cuando ya no tenga datos para leer, imprima el valor actual de A, B y S.

Envíe una copia de su programa.
La salida de pantalla
El archivo de entrada.
El archivo de salida.

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Tu versión:

 switch (NumIn) { case -1: a += s; break; case 0: s += 1; case 1: b += s; }

Para solucionarlo, agregue dos declaraciones de interrupción:

 switch (NumIn) { case -1: a += s; break; case 0: s += 1; break; case 1: b += s; break; }

Sin ellos, el caso 0 pasa al caso 1. En realidad, es legal hacerlo, pero se considera un error común, por lo que SIEMPRE debe hacer un comentario si su falla es intencional. Supongo que esta vez no lo es.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda