私はプログラムを作る必要があります。プログラムは数値を取り、その平方根を出力します。 Ex - 45 - >3√5。私はプログラムを作ったが、それはちょうど私が入れたのと同じ番号を返す。ヘルプは非常に高く評価されるだろう。 ここに私のコードだ - 整数型に関連する両方の行で>数値の平方根を計算するプログラム。
#include<iostream>
using namespace std;
int squarerootfinder(int number, int divisor){
if(divisor == 1){
return 1;
}
else{
if((number/(divisor * divisor))% 1 != 0){
divisor = squarerootfinder(number, divisor - 1);
}
if((number/ (divisor * divisor)) % 1 == 0){
return divisor;
}
}
}
int main(){
int number;
cout << "Enter a number to find the square root of it \n";
cin >> number;
int divisor = number;
int squareroot;
squareroot = squarerootfinder(number, divisor);
cout << squareroot << endl;
return 0;
}
問題のデバッグにどのような試みをしましたか? –
さて、私は30分以上それを読んできましたが、どこにエラーがあるのか分かりません。私は関数の再帰で何かが間違っていると思います。しかし、私は私が何をすべきかについてあまりよく分かりません。 –
デバッガにアクセスできる場合は、実行フローとそのフローのキーポイントでの変数の状態を観察しながら、プログラムの実行を進めたいと思っています。それ以外の場合は、同じことを達成するためにコンソールまたはログファイルに出力してください。 –