Заменить каждое четное число в треугольнике Паскаля звездочкой?
Я пытаюсь заменить каждое четное число в треугольнике Паскаля звездочкой (*). Пока что мой код выглядит так:
#include<stdio.h>
#include<stdlib.h>
long calc( int );
int main()
{
int i,j,row,pas;
printf("Enter no. of rows in pascal triangle : ");
scanf("%d", &row);
for(i=0; i<row; i++)
{
for(j=0; j<=(row-i-1); j++)
printf(" ");
for(j=0; j<=i; j++)
{
pas=calc(i)/(calc(j)*calc(i-j));
printf("%ld ",pas);
}
printf("\n");
}
system("pause");
return 0;
}
long calc( int num)
{
int x;
long res=1;
for(x=1; x<=num; x++)
res=res*x;
return (res);
}
Мне нужно вставить этот блок кода (может быть?)
if (i%2==0)
{
i = asterisk;
printf("%c", asterisk);
}
Конечно я поставлю в основной ()
char asterisk = 42;
Кто-нибудь может мне помочь?
1 ответ
#include<stdio.h>
#include<stdlib.h>
char asterisk = 42;
long calc( int );
int main()
{
int i,j,row,pas;
printf("Enter no. of rows in pascal triangle : ");
scanf("%d", &row);
printf("\n");
for(i=0; i<row; i++)
{
for(j=0; j<=(row-i-1); j++)
printf(" ");
for(j=0; j<=i; j++)
{
pas=calc(i)/(calc(j)*calc(i-j));
if (pas%2==0)
printf("%c ", asterisk);
else
printf("%ld ",pas);
}
printf("\n");
}
system("pause");
return 0;
}
long calc( int num)
{
int x;
long res=1;
for(x=1; x<=num; x++)
res=res*x;
return (res);
}