WOJ1293-数字三角形

来源:互联网 发布:疯狂加速器 mac 编辑:程序博客网 时间:2024/06/06 08:55

输入两个数M、N,(0<=M<=20,1<=N<=10),你需要编一个程序将以M起始的整数排成边长为N的三角形,形式如下: 
... 
M+3  ... 
M+1  M+4  ... 
M   M+2   M+5 ...

输入格式

输入有多组数据,每组数据一行,包含两个正整数M、N(0<=M<=20,1<=N<=10)。 输入以"0 0"结束

输出格式

按照题目的描述输出数字三角形: 注意: 每个数字要求占两位宽度,如果数字小于10则补上空格; 相邻两个数字之间用一个空格隔开;为了使输出更简单,行末也有一个空格。 每个三角形之后输出一个空行。

样例输入

0 29 30 0

样例输出

 1  0  212 10 13  9 11 14



#include<iostream>#include<stdio.h>#include<iomanip>using namespace std;int main(){    int m,n,out,k,count,i,j;    while(scanf("%d %d",&m,&n)!=EOF){      if(m==0&&n==0)       break;      out=m;      for(i=0;i<n;i++)           out+=i;      count=0;     for(i=n;i>0;i--){            count++;            k=out-i+1;           for(j=0;j<n-i+1;j++){                cout<<setw(2)<<out<<" ";                out=out+i+j+1;                   }           out=k;           cout<<endl;      }    cout<<endl;            }    return 0;}


原创粉丝点击