Eu tenho o seguinte código em c++ eu quero definir e chamar uma função que recebe inicial e final do número do usuário e exibir pares ordenados

0

Pergunta

Eu quero fazer uma função para imprimir pares ordenados entre inicial e final do número. Entrada: Introduza a partir do número 1 número final 5 Saída: (11)(12)(13)(14)(15) (22)(23)(24)(25) (33)(34)(35) (44)(45) (55) mas o meu código fornece uma saída diferente eu corrigir

#include <bits/stdc++.h>
using namespace std;
void uniquePairs(int n) {
   for (int i = 1; i < n; ++i) {
      for (int j = i + 1; j < n; j++) {
         cout << "(" << i << "," << j << ")" << endl;
      }
   }
}
int main() {
   int n = 5;
   uniquePairs(n);
   return 0;
}
c++ integer unordered-set
2021-11-23 06:00:40
1

Melhor resposta

1

Você pode modificar a sua função de levar 2 argumento em vez de 1 como mostrado abaixo. Primeiro argumento corresponde ao número inicial e o segundo corresponde ao número final.

#include <iostream>
using namespace std;
//function uniquePairs takes 2 arguments now instead of just 1
void uniquePairs(int startingNumber, int endingNumber) {
    int k = 0;
   for (int i = startingNumber; i <= endingNumber; ++i) {
      for (int j = startingNumber + k; j<= endingNumber; j++) {
         cout << "(" << i << "," << j << ")" << endl;
      }
      ++k;
   }
}
int main() {
   int startingNumber, endingNumber;
   std::cout<<"Enter startingNumber: "<<std::endl;
   std::cin >> startingNumber;
   std::cout<<"Enter endingNumber: "<<std::endl;
   std::cin >> endingNumber;
   //call the function while passing the 2 input numbers
   uniquePairs(startingNumber,endingNumber);
   return 0;
}

A saída do programa acima para entradas startingNumber =1 e endingNumber = 5 é:

Enter startingNumber: 
1
Enter endingNumber: 
5
(1,1)
(1,2)
(1,3)
(1,4)
(1,5)
(2,2)
(2,3)
(2,4)
(2,5)
(3,3)
(3,4)
(3,5)
(4,4)
(4,5)
(5,5)

A saída do programa acima pode ser visto aqui. Também dê uma olhada em Por que não devo #include <bits/stdc++.h>?.

2021-11-23 08:53:50

@user4581301 Ah, eu já mudei para #include<iostream> na minha resposta original. Mas, então, eu fiz algumas editar e novamente colou o código de site externo que tinha esse #include<bits/stdc++.h>. Se você veja o histórico de edição da minha resposta você vai ver que eu tinha #include<iostream>. Eu adicionei um link para "por que não usar este bits/stdc++.h"para OP agora.
Anoop Rana

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................