Juego de gestión de fútbol en C ++ -- ++ campo con beginner campo con array campo con sorting campo con integer camp codereview Relacionados El problema

Football management game in C++


3
vote

problema

Español

Recientemente, he estado trabajando en un juego universitario del gerente de fútbol, ​​en el que entrenas a un equipo de la base. Lo he llegado con éxito a donde podrá ganar juegos, perder juegos y cambiar su equipo en general. Sin embargo, no he trabajado cómo hacer un sistema de clasificación. Lo intenté con una matriz, pero se perdí y no tenía idea de qué hacer.

Tenga en cuenta, no solo el jugador debe ser clasificado, sino a los otros equipos de la liga. No sé si necesitaría simular sus temporadas en el fondo (probablemente).

Si es posible, me gustaría que se basara en su total. El general se encuentra en el entero del equipo, por ejemplo.

O(n)7

Aquí está el código del proyecto, y lo sé, clunky, si tiene alguna idea sobre cómo limpiarla o acortarla, eso también se apreciaría.

  O(n)8  
Original en ingles

Recently, I have been working on a College Football Manager game, in which you coach a team from the ground up. I have successfully made it to where you can win games, lose games, and change your team overall. Yet, I haven't worked out how to make a ranking system. I tried it with an Array, but got lost and had no idea what to do.

Keep in mind, not only does the player need to be ranked, but the other teams in the league. idon't know whether I would need to be simulating their seasons in the background(probably).

If possible, I would like it to be based off their overall. The overall is found under the team integer, for example.

int Kentucky 65;

Here is the project code, and I know, clunky, if you have any ideas on how to clean it up or shorten it, that would also be appreciated.

#include <iostream> #include <string> #include <cstdlib> #include <stdlib.h>  #include <time.h>  #include <bits/stdc++.h> using namespace std; int main() {           string next; string teams[10] = {"Clemson" , "Alabama" , "Georgia" , "Florida" , "Notre Dame" , "Auburn" , "Oklahoma" , "LSU" , "Miami FL" , "Oklahoma State"}; int select, ranking, teamoverall, wins, losses; string team1, team2, userteam, nextgame; int Alabama = 92; int Clemson = 90; int Georgia = 93; int NotreDame = 88; int MiamiFL = 80; int Auburn = 86; int Oklahoma = 85; int LSU = 82; int Florida  = 90; int OklahomaST = 78; int Kansas = 60; int Kentucky = 60; int TexasAM = 65; float score, oppscore; int final, oppfinal, random, random1;  team1 = "Arkanasas"; team2 = "Oklahoma State";      wins = 0; losses = 0;       cout << "COLLEGE FOOTBALL COACH - 2020" << endl;     cout << "1 - Manage" << endl;     cout << "2 - Manual" << endl;     cout << "3 - About" << endl;         cin >> select;     if(select == 1){      goto TeamSelect;        }     if(select ==2){      goto Manual;        }     if(select == 3){      goto About;        }      TeamSelect:     cout << string( 100, '\n' );     cout << "Choose a starting school to coach" << endl;     cout << "1- " << team1 << endl << "2- " << team2 << endl;         cin >> select; if(select == 1){     userteam = "Arkansas";     ranking = 15;     nextgame = "Georgia";     teamoverall = 55; }else{     userteam = "Oklahoma State";     ranking = 10;     nextgame = "Kansas";     teamoverall = 78; } goto Dynasty;  Dynasty:     cout << string( 100, '\n' );     cout << "Team - " << userteam << endl << endl;     cout << "Next Game - " << nextgame << " | Opponent Overall - ";         if(nextgame == "Georgia"){             cout << Georgia << endl << endl;         }else{             if(nextgame == "Kansas"){                 cout << Kansas << endl << endl;             }else{              if(nextgame == "Kentucky"){               cout << Kentucky << endl << endl;                 }else{                 if(nextgame == "Auburn"){                     cout << Auburn << endl << endl;                 }else{                  if(nextgame == "LSU"){                   cout << LSU << endl << endl;                     }else{                   if(nextgame == "Texas A&M"){                    cout << TexasAM << endl << endl;                      }                  }                 }              }             }         }      cout << "Ranking - ";         if(ranking < 11){             cout << ranking << endl << endl;         }else{             cout << "UNRANKED" << endl << endl;         }     cout << "Record" << "(" << wins << " - " << losses << ")" << endl << endl;     cout << "Team Overall - " << teamoverall << endl << endl;     cout << "1- Play Next Game" << endl;     cout << "2- Recruting" << endl;     cout << "3- Rankings" << endl;     cin >> select;         if(select == 3){             goto rankings;         }else if(select ==1){          goto playgame;            }      playgame:     cout << string( 100, '\n' );     if(userteam == "Arkansas"){      if(nextgame == "Georgia"){          score = teamoverall * .5;          srand (time(NULL));          random = rand() % 5 + -20;          srand (time(NULL));          random1 = rand() % 20 + 1;          random = random + random1;                    score = score + random;                    oppscore = Georgia * .5;          srand (time(NULL));          random = rand() % 5 + -20;          srand (time(NULL));          random1 = rand() % 25 + 1;          random = random + random1;                    oppscore = oppscore + random;                    final = score;          oppfinal = oppscore;                    if(final == oppfinal){             goto playgame;          }                    if(final < 0){             final = 0;          }          if(oppfinal < 0){             oppfinal = 0;          }           if(final == 1){             final == 3;          }           if(final == 1){             final == 3;          }          if(oppfinal ==1){             oppfinal == 3;          }          if(score>oppscore){           wins = wins + 1;           teamoverall = teamoverall + 2;          }else{           losses = losses +1;              teamoverall = teamoverall - 2;          }                    cout << "Arkansas scored " << final << " | Georgia scored " << oppfinal << endl << endl;          nextgame = "Kentucky";                    cout << "Type 1 and press enter to continue..." << endl;          cin >> select;          goto Dynasty;                }else{      if(nextgame == "Kentucky"){          score = teamoverall * .5;          srand (time(NULL));          random = rand() % 5 + -20;          srand (time(NULL));          random1 = rand() % 20 + 1;          random = random + random1;                    score = score + random;                    oppscore = Kentucky * .5;          srand (time(NULL));          random = rand() % 10 + -25;          srand (time(NULL));          random1 = rand() % 25 + 1;          random = random + random1;                    oppscore = oppscore + random;                    final = score;          oppfinal = oppscore;                    if(final == oppfinal){             goto playgame;          }                              if(final < 0){             final = 0;          }          if(oppfinal < 0){             oppfinal = 0;          }           if(final == 1){             final == 3;          }          if(oppfinal ==1){             oppfinal ==3;          }                    if(score>oppscore){           wins = wins + 1;           teamoverall = teamoverall + 2;          }else{           losses = losses +1;              teamoverall = teamoverall - 2;          }          cout << "Arkansas scored " << final << " | Kentucky scored " << oppfinal << endl << endl;          nextgame = "Auburn";          cout << "Type 1 and press enter to continue..." << endl;          cin >> select;          goto Dynasty;      }else{          if(nextgame == "Auburn"){           cout << string( 100, '\n' );          score = teamoverall * .5;          srand (time(NULL));          random = rand() % 5 + -25;          srand (time(NULL));          random1 = rand() % 20 + 1;          random = random + random1;                    score = score + random;                    oppscore = Auburn * .5;          srand (time(NULL));          random = rand() % 1 + -20;          srand (time(NULL));          random1 = rand() % 20 + 1;          random = random + random1;                    oppscore = oppscore + random;                    final = score;          oppfinal = oppscore;                              if(final < 0){             final = 0;          }          if(oppfinal < 0){             oppfinal = 0;          }           if(final == 1){             final == 3;          }          if(oppfinal ==1){             oppfinal == 3;          }                    if(final == oppfinal){             goto playgame;          }                    if(score>oppscore){           wins = wins + 1;           teamoverall = teamoverall + 2;          }else{           losses = losses +1;              teamoverall = teamoverall - 2;          }                    cout << "Arkansas scored " << final << " | Auburn scored " << oppfinal << endl << endl;          nextgame = "LSU";                    cout << "Type 1 and press enter to continue..." << endl;          cin >> select;          goto Dynasty;             }else{           if(nextgame == "LSU"){               cout << string( 100, '\n' );          score = teamoverall * .5;          srand (time(NULL));          random = rand() % 5 + -15;          srand (time(NULL));          random1 = rand() % 25 + 1;          random = random + random1;                    score = score + random;                    oppscore = LSU * .5;          srand (time(NULL));          random = rand() % 1 + -20;          srand (time(NULL));          random1 = rand() % 25 + 1;          random = random + random1;                    oppscore = oppscore + random;                    final = score;          oppfinal = oppscore;                              if(final < 0){             final = 0;          }          if(oppfinal < 0){             oppfinal = 0;          }          if(final == 1){             final == 3;          }          if(oppfinal ==1){             oppfinal ==3;          }                    if(final == oppfinal){             goto playgame;          }                    if(score>oppscore){           wins = wins + 1;           teamoverall = teamoverall + 2;          }else{           losses = losses +1;              teamoverall = teamoverall - 2;          }                    cout << "Arkansas scored " << final << " | LSU scored " << oppfinal << endl << endl;          nextgame = "Texas A&M";                    cout << "Type 1 and press enter to continue..." << endl;          cin >> select;          goto Dynasty;           }else{           if(nextgame == "Texas A&M"){               cout << string( 100, '\n' );          score = teamoverall * .5;          srand (time(NULL));          random = rand() % 10 + -20;          srand (time(NULL));          random1 = rand() % 30 + 1;          random = random + random1;                    score = score + random;                    oppscore = TexasAM * .5;          srand (time(NULL));          random = rand() % 5 + -15;          srand (time(NULL));          random1 = rand() % 20 + 1;          random = random + random1;                    oppscore = oppscore + random;                    final = score;          oppfinal = oppscore;                              if(final < 0){             final = 0;          }          if(oppfinal < 0){             oppfinal = 0;          }           if(final == 1){             final == 3;          }          if(oppfinal ==1){             oppfinal = 3;          }                      if(final == oppfinal){             goto playgame;          }                    if(score>oppscore){           wins = wins + 1;           teamoverall = teamoverall + 2;          }else{           losses = losses +1;              teamoverall = teamoverall - 2;          }                    cout << "Arkansas scored " << final << " | Texas A&M scored " << oppfinal << endl << endl;          nextgame = "Texas A&M";                    cout << "Type 1 and press enter to continue..." << endl;          cin >> select;          goto Dynasty;           }          }      }      }      }     }                                   rankings:     cout << string( 100, '\n' );             cout << "1- " << teams[0] << endl;             cout << "2- " << teams[1] << endl;             cout << "3- " << teams[2] << endl;             cout << "4- " << teams[3] << endl;             cout << "5- " << teams[4] << endl;             cout << "6- " << teams[5] << endl;             cout << "7- " << teams[6] << endl;             cout << "8- " << teams[7] << endl;             cout << "9- " << teams[8] << endl;             cout << "10- " << teams[9] << endl;             cout << "Type 1 and press enter to go back..." << endl;                 cin >> select;             goto Dynasty; Manual:     cin >> select; About:     cin >> select;      }   
              
 
 

Lista de respuestas

5
 
vote
vote
La mejor respuesta
 

Su código no se compila debido al uso no válido de else if0 . Sin embargo, he puesto en mis pensamientos.

NO else if1 & amp; else if2

¿Por qué no debería usar el uso de Namespace Std en C ++
¿Por qué no debería #incluir & lt; bits / stdc ++ .h & gt ;?

Siempre debe intentar evitar estas dos afirmaciones.


Formatear su código correctamente

Una parte muy importante del código limpio de la escritura es que está formateado correctamente. Como es actualmente, su código es extremadamente difícil de leer. Simplemente usando un sitio como este ° Para formatear su código puede ayudar a un lote

¿Qué entra en else if3 ?

Lo haría altamente le sugiero que haga uso de Funciones para dividir el trabajo. Su else if4 típicamente no debería realizar todo esto. Debe nuevamente, dividir el trabajo en diferentes funciones que hagan que su código 100x sea más legible

Un ejemplo de su código puede ser

  else if5  

¿Por qué no asignar esto a una función llamada else if6 ? De esta manera, siempre que desee imprimir esto, no tendrá que copiar esto, pero simplemente llame a else if7

Su función principal debe ser capaz de controlar el flujo .

else if8 ?

VERO else if9 Declaraciones en todas partes del código. Ahora es cada vez más difícil leer su código, ya que necesito hacer else if0 en mi IDE para encontrar la etiqueta GOTOO del enorme bloque de código. Una alternativa mucho mejor a la que debería ser usar funciones . Donde cada elección llamaría la función respectiva.

Evite el uso de Números mágicos

Los números mágicos básicamente son

Valores únicos con significado inexplicable o múltiples ocurrencias que podrían reemplazarse (preferiblemente) con constantes nombrados

  else if1  

¿Qué es else if2 al lector? ¿Qué pasa si pudiera nombrar las opciones específicas de una manera que la funcionalidad sigue siendo la misma, pero el código es más legible?

enumers en C ++

Una enumeración es un tipo definido por el usuario que consiste en un conjunto de constantes integrales denominadas que se conocen como enumeradores.

¿Cómo implementaremos la idea de las enumeraciones aquí?

  else if3  

Aquí cuando establezco else if4 , el manual se convierte en else if5 , abort se convierte en 99887776655443386 ... De esta manera puedo reemplazar la línea

  else if7  

en

  else if8  

Ahora queda claro al lector de que si la selección del usuario es else if9 , gestiona las cosas .

Uso cond0 o cond1

Usted tiene un conjunto de equipos, cond2 . Si no desea cambiar este valor durante el tiempo de ejecución, es una buena práctica para declararlo cond3 . Esto garantiza que nunca cambiará el valor de cond4 . Por lo tanto, permanecerá constante . Ahora, incluso si intenta accidentalmente cambiar cond5 . El compilador lanzará un error y se ahorrará mucho tiempo.

cond66 OXT cond7

Esto podría parecer un cambio muy pequeño e innecesario. Ambos lograrán su propósito, pero cond8 es mucho más rápido que cond9 eliminará el búfer de salida cada vez que tiene problemas de rendimiento. br />

' n' vs std :: endl en C ++ < / p>


Programación orientada a objetos

Creo que usted mismo ha descubierto que su proyecto es clunky . Esto se debe a que el diseño del programa en sí no es bueno. Usted tiene variables declaradas al azar, y use 998877665554433100 Para moverse alrededor del enorme bloque de código en la función cond01 .

Hay una forma en que puede mejorar su código por un gran margen. Y eso es programación orientada a objetos .

Tiene un equipo, tiene atributos como puntuación, victorias, pérdidas, nombre, etc.

¿Por qué no puede tener una clase llamada cond02 ¿Eso tendría todos estos atributos y métodos para administrar los datos correctamente? De esta manera, reduciría mucha repetición en el código y lo hará más rápido.

  cond03  

Con esta clase, crearía una matriz de cond04 s que tendrían todos estos atributos. Por ejemplo

  cond05  

Nota: No sé el juego de fútbol ni soy americano, acabo de tomar los puntos clave de su código.

Esto hará que sea 100 veces más fácil mantener una pista de lo que estaba sucediendo.

Dado que tiene varios equipos, puede crear una matriz de objetos de esta manera.

  cond06  

Mi ejemplo es una clase muy básica. Lea este saber más sobre las clases.

sobre el sistema de clasificación

Dado que usted tiene directamente una matriz de equipos, 1 bucle a través de la matriz puede obtener el equipo con el número máximo de victorias. Se vería así

asumiendo que la matriz de objetos está inicializada

  cond07  

¿Qué está pasando aquí? He establecido la puntuación inicial en cond08 (esperando que esa sea la puntuación más baja posible). Ahora, cuando pase por los equipos, si la puntuación de cualquier equipo es mayor que cond09 , 998877665554433110 se convierte en esa puntuación. Y al mismo tiempo guardo un registro del equipo ganador. Al final cond11 será el nombre del equipo y cond12 será su puntaje.

 

Your code doesn't compile due to the invalid use of goto. Nevertheless, I have put in my thoughts.

Dont using namespace std & #include <bits/stdc++.h>

Why shouldn't I use using namespace std in C++
Why shouldn't I #include <bits/stdc++.h>?

You should always try to avoid these two statements.


Format your code properly

A very important part of writing clean code is that it is formatted properly. As it is currently, your code is extremely tough to read. Simply using a site like this one to format your code can help a lot

What goes into main()?

I would highly suggest you to make use of functions to split the work. Your main() typically shouldn't perform all of this. You need to again, split the work into different functions which will make your code 100x more readable

An example of from your code can be

cout << "COLLEGE FOOTBALL COACH - 2020" << endl; cout << "1 - Manage" << endl; cout << "2 - Manual" << endl; cout << "3 - About" << endl; 

Why not assign this to a function called print_info() ? This way whenever you would want to print this, you wouldn't have to copy-past this but merely call print_info()

Your main function should be able to control the flow.

goto?

I see goto statements everywhere in the code. It is now becoming increasingly difficult to read your code as I need to do Cntrl+f in my IDE to find the goto tag from the huge block of code. A much better alternative to it should be to use functions. Where each choice would call the respective function.

Avoid the use of magic numbers

Magic numbers basically are

Unique values with unexplained meaning or multiple occurrences which could (preferably) be replaced with named constants

if(select == 1){...} 

What is 1 to the reader? What if I could name the specific choices in a way that the functionality remains the same but the code is more readable?

enums in C++

An enumeration is a user-defined type that consists of a set of named integral constants that are known as enumerators.

How will we implement the idea of enumerations here?

enum Choices{ manage = 1,manual,abort }; 

here when I set manage = 1, manual becomes 2, abort becomes 3... This way I can replace the line

if(select == 1){...} 

Into

if(select == manage){...} 

Now it is clear to the reader that if the user's selection is manage, do manage stuff.

Use const or constexpr

You have a set of teams, std::string teams[10]. If you don't want to change this value during the run-time, it is a good practice to declare it const. This ensures that you will never change the value of teams. Hence, it will remain constant. Now even if you accidentally try to change teams. The compiler will throw an error and you will save yourself a lot of time.

'\n' over std::endl

This might look like a very small, and unnecessary change. Both of them will achieve your purpose, but '\n' is much faster as std::endl; will flush the output buffer every time, which has performance issues.

'\n' vs std::endl in C++


Object-Oriented-Programming

I think you yourself have figured out that your project is clunky. This is because the design of the program itself isn't good. You have randomly declared variables, and used goto to move around the huge block of code in the main() function.

There is a way that you can improve your code by a huge margin. And that is Object oriented programming.

You have a team, it has attributes like score, wins, losses, name, etc.

Why can't you have a class called Team that would have all these attributes and methods to manage the data properly? This way you would reduce a lot of the repetition in the code and make it faster.

class Team { public:     std::string name;     int wins;     int losses;     int teamoverall;  } 

With this class, you would create an array of Teams which would all have these attributes. For example

Team new_team; new_team.name = "Kansas"; new_team.wins = 5 // and the rest of the attributes 

Note: I don't know the game of football nor am I American , I have just taken the key points from your code.

This would make it 100x easier to keep a track of what was going on.

Since you have multiple teams, you can create an array of objects this way.

Team all_teams[number_of_teams]; 

My example is a very basic class. Read this to know more about classes.

About the ranking system

Since you directly have an array of teams, 1 loop through the array can get you the team with the max number of wins. It would look like this

Assuming the array of objects is initialized

std::string highest_scoring_team; int max = 0; for(auto const& team:array_of_teams) {     if (team.max > max)      {         team.max = max;         highest_scoring_team = team.name     } } 

What's happening here? I have set the initial score to 0 (Hoping that is the lowest score possible). Now when go through the teams, if the score of any team is greater than max, max becomes that score. And at the same time i keep a record of the winning team. At the end highest_scoring_team will be the name of the team and max will be their score.

 
 
         
         
2
 
vote

además de arriba

No inicialice Srand sobre y sobre Againing

srand (time(NULL)); debe llamarse una vez. detalles

Use recipientes estándar en lugar de arreglos crudos

std::array1 es una opción excelente para almacenar sus datos de tamaño conocido. Si está utilizando C ++ 17, ni siquiera necesita especificar qué o cuántos dentro.

Probablemente necesite una cola o pila tal vez

Si entiendo correctamente toneladas de goto s en su código que necesita std::queue para trabajar con MatchMaking y esas cosas.

No copie la cosa de Pasta cuando pueda usar el ciclo en lugar

  cout << "1- " << teams[0] << endl; cout << "2- " << teams[1] << endl; cout << "3- " << teams[2] << endl; cout << "4- " << teams[3] << endl; cout << "5- " << teams[4] << endl; cout << "6- " << teams[5] << endl; cout << "7- " << teams[6] << endl; cout << "8- " << teams[7] << endl; cout << "9- " << teams[8] << endl;   

podría imprimirse como

  const size_t teamCount = 8; for (size_t i = 0; i < teamCount;++i) {   std::cout << (i+1) << "- " << teams[i] << " "; // note it's not endl } std::cout << std::endl; // push endl to flush data to IO-stream   

Se aplica a otros lugares donde representa algún menú para el jugador. Puedes hacer que alguna clase fuera de ella. Y usar queue también requerirá usar algunos bucles también

No use palabras reservadas

final es también calificador de CV para los métodos virtuales, así que es mejor nombrar algo más.

 

In addition to above

Do not initialise srand over and over againg

srand (time(NULL)); should be called once. Details

Use standard containers instead of raw arrays

std::array is excellent choice to store your data of known size. if you are using c++17 you don't even need to specify what or how many inside.

You probably need a queue or stack maybe

if I comprehend correctly tons of gotos in your code you need std::queue to work with matchmaking and stuff.

do not copy-paste thing when you can use cycle instead

cout << "1- " << teams[0] << endl; cout << "2- " << teams[1] << endl; cout << "3- " << teams[2] << endl; cout << "4- " << teams[3] << endl; cout << "5- " << teams[4] << endl; cout << "6- " << teams[5] << endl; cout << "7- " << teams[6] << endl; cout << "8- " << teams[7] << endl; cout << "9- " << teams[8] << endl; 

could be printed as

const size_t teamCount = 8; for (size_t i = 0; i < teamCount;++i) {   std::cout << (i+1) << "- " << teams[i] << "\n"; // note it's not endl } std::cout << std::endl; // push endl to flush data to IO-stream 

It applies to other places where you render some menu for player. You can make some class out of it. And using queue also will require to use some loops as well

Don't use reserved words

final is also cv-qualifier for virtual methods, so better name it something else.

 
 
 
 

Relacionados problema

3  Little / Big Endian Conversion  ( Little big endian conversion ) 
Quería asegurarme de que mi código se convierte correctamente entre los dos endianos. Aquí está el código donde leo en un entero: System.out.println("Ple...

-2  CONSTRUCCIÓN: VARIT INTEGER CODIFICACIÓN  ( Construct varint integer encoding ) 
Este código es parte de la construir biblioteca. Los doctras explican lo que se supone que debe hacer el código. Function ColSearch(Heading As String) As...

5  Seguro, totalmente estándar, siguiendo el entero ABS en C  ( Safe fully standards following integer abs in c ) 
Aquí está un poco complicado, porque AFAIK no existe una plataforma existente, donde la parte recopilada condicional del Código realmente se incluiría por el ...

19  Mostrando cada número de un entero en una secuencia  ( Displaying each number of an integer in a sequence ) 
Uno de los libros que estoy leyendo actualmente para aprender C # le pidió que escribiera un método que realice un número entero entre 1 y 99999 y muestra cad...

4  Verificación computacional de la conjetura de Collatz utilizando OpenCl  ( Computational verification of collatz conjecture using opencl ) 
Esta solicitud de revisión de código sigue mi solicitud anterior Verificación computacional de Collatz Conyecture . A diferencia del programa anterior (que ...

9  Convertir un entero a binario, hexágono y octal  ( Converting an integer to binary hex and octal ) 
He empezado a cuidar de los estándares y la belleza de mi código. Dudo que lo haya escrito correctamente y estéticamente. ¿Puedes por favor juzgar este progra...

10  Suma más rápida de valores absolutos de 32 diferencias  ( Fastest sum of absolute values of 32 differences ) 
A long1 debe tratarse como una lista de 32 números sin firmar, cada uno de ellos a solo dos bits. Por lo que 0x1234F... representa {0, 1, 0, 2, 0, 3, 1...

5  Normalizar tipos de enteros a rango de flotador  ( Normalize integer types to float range ) 
Escribí dos funciones de plantilla para tomar un tipo de entero y emitir un $_POST3 en el rango dado. Una función toma enteros firmados y la otra toma enter...

34  Comprobando si dos números tienen el mismo signo  ( Checking if two numbers have the same sign ) 
¿Hay una manera más elegante que la siguiente para verificar si dos números tienen el mismo signo? bool sameSign(int num1, int num2) { if (num...

5  Cambiando dos números enteros sin una variable temporal  ( Swapping two integer numbers with no temporary variable ) 
Intenté cambiar 2 números enteros sin usar una variable adicional como un intercambio tradicional. ¿Es legal en C ++? Mi compilador de VC no se queja ni le ...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos