输出菱形的代码
之前寫過這種題,但是用的方法過于麻煩。最近看到了一種新的解法,與大家一同分享一下。
?
曼哈頓距離:(X1,Y1)? (x2,y2)兩點
|X1-x2|+|Y1-y2|
現在讓我們畫個方格?:
?x,y軸已經標好,咱們從零開始。中心點坐標為(2,2),之后計算出各點距離中心點的曼哈頓距離。之后我們發現,在距離小于等于2處畫*是符合要求的。我們可以得出以下代碼:
#include <iostream>
#include <cmath> //C++調用math庫的方法 C語言是 #include <stdio.h>
using namespace std;
int main(){int n,x,y;cin >>n;x=n/2;y=n/2;for(int i=0;i<n;i++){for(int j=0;j<n;j++){if(abs(i-x)+abs(j-y)<=n/2){cout << '*';//輸出}else{cout << ' ';//輸出}}cout <<endl;//輸出換行符}return 0;
}
總結
- 上一篇: 80平方装修多少钱啊?
- 下一篇: 翻转矩阵(数组右移问题)