Guest User

Untitled

a guest
May 21st, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.54 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. int main(){
  4.     int x,y; //строки и столбцы пирамиды
  5.     int m,n; //переменные для заполнения и для вывода
  6.     int levels,biggest; //уровни пирамиды и наибольшее из x y
  7.     int i; //ещё переменная для заполнения
  8.     int piramida[100][100]; //массив самой пирамиды
  9.     scanf("%d%d", &x, &y); //ввод строков и столбцов пирамиды
  10.     printf("\n"); //переход на следующую строчку
  11.     if (x>=y){biggest=x;}else {biggest=y;} //поиск наибольшего
  12.     levels=(biggest/2)+(biggest%2); //подсчет кол-ва уровней //Pascal
  13.     for (i=0; i<levels; ++i){                                //for i:= 1 to levels do
  14.         for (m=i; m<x-i; ++m){                           //  for x:=i to n-(i-1) do
  15.             for (n=i; n<y-i; ++n){                   //    for y:=i to m-(i-1) do
  16.                 ++piramida[m][n];                //      arr[x,y]:=arr[x,y]+1;
  17.             }                                        //Если 1 оператор идёт, то можно без { }, но мне так больше нравится.
  18.         }
  19.     }
  20.     for (m=0; m<x; ++m){  //Вывод пирамиды
  21.         for (n=0; n<y; ++n){
  22.             if (levels/10==0){printf("%2d", piramida[m][n]);}else{printf("%3d", piramida[m][n]);}  //Если число количества уровней однозначное, то под каждое число 2 места, если двузначное, то 3.
  23.         }
  24.         printf("\n");
  25.     }
  26. }
Add Comment
Please, Sign In to add comment