У меня есть следующий код на c++, я хочу определить и вызвать функцию, которая получает начальное и конечное число от пользователя и отображает упорядоченные пары

0

Вопрос

Я хочу создать функцию для печати упорядоченных пар между начальным и конечным числом, например. Ввод: Введите начальный номер 1, конечный номер 5 Выход: (11)(12)(13)(14)(15) (22)(23)(24)(25) (33)(34)(35) (44)(45) (55) но мой код дает другой вывод, я исправляю это

#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

Лучший ответ

1

Вы можете изменить свою функцию, чтобы она принимала 2 аргумента вместо 1, как показано ниже. Первый аргумент соответствует стартовому номеру, а второй-конечному номеру.

#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;
}

Вывод вышеуказанной программы для входных данных startingNumber =1 и 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)

Результаты вышеприведенной программы можно увидеть здесь. Также взгляните на то, почему я не должен #включать <bits/stdc++.h>?<bits/stdc++.h>.

2021-11-23 08:53:50

@user4581301 О, я уже изменил его на #include<iostream> в моем первоначальном ответе. Но затем я внес некоторые правки и снова вставил код с внешнего сайта, на котором было это #include<bits/stdc++.h>. Если вы увидите историю редактирования моего ответа, вы увидите, что у меня был #include<iostream>. Я добавил ссылку на "почему бы не использовать это bits/stdc++.h"сейчас для операции.
Anoop Rana

На других языках

Эта страница на других языках

Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................