トピック 1040: [プログラミング入門] 実数の出力

実数、浮動小数点範囲

出力フォーマット

3 行を出力します。最初の行は入力数値を 1 回出力し、2 行目は 2 回出力し、3 行目は 3 回出力します。2 行目と 3 行目では、同じ行の数字をスペースで区切ります。実数は「6.2f」形式で出力されます。

サンプル入力

コピー

0.618

サンプル出力

コピー

  0.62 
  0.62 0.62 
  0.62 0.62 0.6

出力を観察すると、最初の行は 1 を出力し、2 行目は 2 を出力し、3 行目は 3 を出力していることがわかりました。

3X3 の二重層 for ループを使用します。ローカル変数 i の範囲は 1~3です。外側の層は行番号を表し、内側の層は出力の数を表します。

外側のステートメントはローカル変数 cnt=0を設定するもので、素数を見つけて isPrime のブール値を初期化するのと少し似ています。

..>しかし、これは最善の方法ではありません。

方法 1:

//实数的打印
#include<iostream>
using namespace std;

int main() {
	float num;
	cin >> num;
	int cnt = 1;  //计数仔上线 初始为1表示:第1行输出1个      第2行输出2个
	for (int j = 1; j <= 3; j++) {   //一共输出3次
		cnt = 0;
		for (int i = 1; i <= 3; i++) {  //每一行输出对应的个数
			if (cnt == j && cnt != 3) {  //第三次不endl跳行
				cout << endl;
				break;
			}
			printf("%6.2f ", num);       //专业四舍五入-留两位
			++cnt;   //自增1 表示本行输出1个num
		}
	}

	return 0;
}

方法 2:

専門家の中には、 cntを数えるのは面倒だから、i==jで判断すればいい、出力数は行数だよね、と考える人もいるかもしれないが、そうだ。

ブレークとコンティニューの違いについては、次のようになります。

Break` ステートメントは、内側のループの実行を完全に終了し、外側のループを続行するために使用されます

「Continue」ステートメントは、この内部ループの残りのコードをスキップし、内部ループの次の反復に直接進むために使用されます。

;そして満たされたと判断した後は、現在の行に出力する必要がなくなるので、内側のループから完全に抜け出して次の外側のループに進みます。

//实数的打印
#include<iostream>
#include<iomanip>
using namespace std;

int main() {
	float num;
	cin >> num;

	for (int j = 1; j <= 3; j++) {   //一共输出3次
		for (int i = 1; i <= j; i++) {  //每一行输出对应的个数
			printf("%6.2f ", num);
			if (i == j) {
					cout << endl;
					break;
			}
		}
	}

	return 0;
}

おすすめ

転載: blog.csdn.net/qq_63999224/article/details/132364806