Thuật toán cho hàm for/if trong C
Em có thử làm 1 bài toán viết số theo hình vuông từ 1 đến 9 với C [xử dụng Borland C++ for windows]
Code:
#include <stdio.h>
#include <conio.h>
void main(void)
{
int a,b;
for (a=0;a<=9;a++)
{
if(a==0)
for (b=0;b<=9;b++)
printf("%d",b);
else
if (a==9)
for (b=9;b>=0;b--)
printf("%d",b);
else
for (b=a;b<=9+a;b++)
if (b==a)
printf("%d",a);
else
if (b==(9+a))
printf("%d",9-a);
else
printf(" ");
printf("\n");
};
getch();
}
Kết quả in ra màn hình:
Code:
0123456789
1 8
2 7
3 6
4 5
5 4
6 3
7 2
8 1
9876543210
Bài tập trên mặc dù em làm đc nhưng hình như thuật toán quá dài dòng. Bác nào giúp em thu ngắn nó lại đc ko (em chỉ mới học tới hàm if,for,while thôi, nếu dùng cái khác các bác cho em vài dòng giải thích). Thanks :D
*Mấy số in ra màn hình nằm rất là đẹp, bỏ vào [code] nó tự chạy lung tung :D