C program to print trapezoid pattern of numbers,stars & hypens -
i asked in test today.
i had print following pattern:-
for example if user input n=4 output should of pattern-
1*2*3*4*17*18*19*20
--5*6*7*14*15*16
----8*9*12*13
------10*11
again if n=5 code should print
1*2*3*4*5*26*27*28*29*30
--6*7*8*9*22*23*24*25
----10*11*12*19*20*21
------13*14*17*18
--------15*16
i manage print pattern partially...help..
progress far...
#include <stdio.h> void pattern(int); int main() { int n; scanf("%d",&n); pattern(n); return 0; } void pattern(int n) { int i,j,k=1,l=2,h; for(i=n;i>0;i--) { if(i<n) { for(h=1;h<=l;h++) printf("-"); l=l+2; } for(j=1;j<=i;j++) { printf("%d",k); k++; if(j!=i) printf("*"); } printf("\n"); } }
this prints n=4:-
4 1*2*3*4 --5*6*7 ----8*9 ------10
there go :
#include<stdio.h> void pattern(int); int main() { int n; scanf("%d",&n); pattern(n); return 0; } void pattern(int n) { int i,j,k=1,l=2,h; int rest=n*(n+1)+1,rn=0; for(i=n;i>0;i--) { if(i<n) { for(h=1;h<=l;h++) printf("-"); l=l+2; } for(j=1;j<=i;j++) { printf("%d",k); k++; printf("*"); } rest=rest-i; rn=rest; for(int p=1;p<=i;p++) { printf("%d",rn); rn++; if(p!=i) printf("*"); } printf("\n"); } }
i see did job in printing hypens , half numbers. left other half should decremented each line. highest number need print n*(n+1). compute number (in variable rest) , need decrement each line i(half of number of elements on row).
Comments
Post a Comment