Может кто-нибудь сказать, пожалуйста, как исправить ошибку в моем коде? - PullRequest
0 голосов
/ 01 апреля 2020

Я должен написать программу на C ++ для , принять 2 целых числа и найти их G. C .D (Величайший общий делитель), используя функцию с оператором возврата.

Вот что я написал:

int gcd(int x, int y)

#include<iostream.h>
#include<conio.h>

void main()
{
   clrscr();
   int q, x, y, ans;
   cout<<"Enter 2 nos."<<endl;
   cin>>x>>y;
   q = gcd(x,y)
   cout<<"The GCD is: "<<q<<endl;
   getch();
}

int gcd(int x, int y)
{
   int ans;
   int i;
   for(i = 0; i<=x && i<=y; i++)
   {
      if(x%i==0 && y%i==0)
      ans = i;
   }
   return ans;
}

При компиляции моего кода я получаю ошибку синтаксиса объявления.

Может кто-нибудь указать, в какой строке моя ошибка и как мне это исправить?

1 Ответ

1 голос
/ 01 апреля 2020
int gcd(int x, int y)

Отсутствует ;


q = gcd(x,y)

Отсутствует ;


#include<iostream.h>

Может быть, вы имели в виду

#include <iostream>

if(x%i==0 && y%i==0)

Целочисленное деление на ноль, в первой итерации, когда i = 0.


main должен вернуть int.


Дополнительные соображения:

getch() и clrscr() являются устаревшими функциями и conio.h - это Windows, указать c, вам следует подумать о том, чтобы его не использовать.

...