כיתבו תוכנית שמקבלת מהמשתמש מספר אי זוגי, מוודא שהמספר אכן אי זוגי, ומדפיסה משולש שווה שוקיים של כוכביות כשהמספר שקיבלנו הוא מספר הכוכביות בבסיס המשולש!
לדוגמה:
פתרון:
#include<stdio.h>int n;
void F(intx){
int i = (n-x)/2;
if (x == -1) return;
else{
F(x-2);
for(;i>0;i--) putchar(' ');
for(i=x;i>0;i--)putchar('*');
putchar('\n');
}
}
void main(){
do{
printf("Enter number: ");
scanf("%d",&n);
if (n%2==1) break;
}while (1);
F(n);
}
שינוי סדר ספרות ומיון מערך
כיתבו תוכנית שמקבלת מהמשתמש עשרה מספרים, מאחסנת את כולם במערך, משנה את כל המספרים כך שהספרות יהיו מהסוף להתחלה, ממינת את המספרים החדשים במערך לפי הסדר מהקטן לגדול ומדפיסה את המספרים במערך לפי הסדר הממוין!
לדוגמה:
אם נקבל את 10 המספרים הבאים:
123 124 67 66 7 9 100 776 767 123
כל המספרים במערך יהפכו את סדר הספרות שלהם:
321 421 76 66 7 9 1 677 767 321
ואז המערך ימוין:
1 7 9 66 76 321 321 421 677 767
וכך הוא יודפס.
פתרון:
#include<stdio.h>enumflag{success,fail};
void main(){
int A[10],i,b=0;
enumflag ff=fail;
printf("Enter 10 numbers: ");
for (i=0;i<10;i++) scanf("%d",&A[i]);
// עד כאן קלטנו מערךfor(i=0;i<10;i++,b=0){
while (A[i]>9){
b += A[i]%10 ;
A[i] /= 10 ;
b *= 10;
}
b += A[i];
A[i] = b;
}
// עד כאן הפכנו את הספרות בכל המספרים במערךwhile(ff==fail){ // מיון
ff = success;
for(i=0;i<9;i++){
if (A[i]>A[i+1]){
ff = fail;
b=A[i];
A[i]=A[i+1];
A[i+1]=b;
}
}
}
for(i=0;i<10;i++){
printf("%d\n",A[i]);
}
}
או: (משופר)
#include<stdio.h>enumflag{success,fail};
#defineN 10
int A[N];
void change_digits_position(intA[N]){ // הפיכת המספרים במערךint i,b=0;
for(i=0;i<N;i++,b=0){
while (A[i]>0){
b *= 10;
b += A[i]%10 ;
A[i] /= 10 ;
}
A[i] = b;
}
}
void sort(intA[N]){ // מיוןenumflag ff=fail;
int i,b;
while(ff==fail){
ff = success;
for(i=0;i<N-1;i++){
if (A[i]>A[i+1]){
ff = fail;
b=A[i];
A[i]=A[i+1];
A[i+1]=b;
}
}
}
}
void main(){
int A[N],i,b=0;
printf("Enter %d numbers: ",N);
for (i=0;i<N;i++) scanf("%d",&A[i]);
change_digits_position(A);
sort(A);
for(i=0;i<N;i++){
printf("%d\n",A[i]);
}
}
http://www.kerenkalif.com/ProgrammingLectures/Advanced%20C/
השבמחקhttp://he.eytam.com/c/course/chap1#toc33
השבמחקhttp://he.computers.wikia.com/wiki/%D7%A9%D7%A4%D7%AA_%D7%94%D7%AA%D7%9B%D7%A0%D7%95%D7%AA_C