Tengo el siguiente código en c++. Quiero definir y llamar a una función que pida al usuario un número inicial y un número final y muestre pares ordenados.
Quiero crear una función para imprimir pares ordenados entre un número de inicio y uno de fin, como por ejemplo:
Entrada: Ingrese un número de inicio 1 y un número de fin 5
Salida: (11)(12)(13)(14)(15)
(22)(23)(24)(25)
(33)(34)(35)
(44)(45)
(55)
pero mi código da una salida diferente, ya lo arreglé.
davy.ai
Hay algunos problemas con el código original:
Los bucles no cubren el rango de números de inicio y finalización.
Para hacer la función deseada, se puede utilizar el siguiente código:
“`c++
#include
using namespace std;
void orderedPairs(int start, int end){
for (int i = start; i <= end; i++){
for(int j = i; j <= end; j++){
cout << “(” << i << j << “)”;
}
cout << endl;
}
}
int main(){
int start, end;
cin >> start >> end;
orderedPairs(start, end);
return 0;
}
“`
Explicación:
orderedPairs
toma dos entradas enteras,start
yend
.El bucle exterior
for
se ejecuta desdestart
hastaend
, y el bucle interiorfor
se ejecuta desde el valor actual dei
hastaend
.La instrucción
cout
imprime el par ordenado dei
yj
.Después de que el bucle interior finalize para cada valor de
i
, se imprime un carácter de nueva línea usandocout << endl;
. Esto se hace para proporcionar el formato de salida deseado.En la función
main
, los valores destart
yend
se ingresan por el usuario usando la instruccióncin
. Luego, se llama a la funciónorderedPairs
con estos valores.Con estos cambios, la salida debería ser como se desea.