/*
* Translate the following codes to full Pascal programs
*/
//Scope of variable
#include<stdio.h>
#include<stdlib.h>
int count = 1;
int b[5] = {1,6,12,11,0};
void Fun1(){
int i;
count= count+2;
for(i=0;i<count;i++)
b[i]++;
return;
}
void Fun2(){
int i;
for(i=0;i<count;i++)
b[i] = b[i]+2;
count--;
return;
}
int main(void){
int i;
for(i=0;i<3;i++)
(i%2==0 ? Fun1() : Fun2());
return 0;
}
/*************************************************************************/
// Shell Sort
#include<stdio.h>
#define MAX 8
int main(void) {
int a[MAX]={2,4,1,9,-1,0,5,3};
int i, j, increment, temp;
increment = 3;
while (increment > 0){
for (i=0; i < MAX; i++){
j = i;
temp = a[i];
while ((j >= increment) && (a[j-increment] > temp)){
a[j] = a[j - increment];
j = j - increment;
}
a[j] = temp;
}
if (increment/2 != 0)
increment = increment/2;
else if (increment == 1)
increment = 0;
else
increment = 1;
}
return 0;
}
/*************************************************************************/
//Insertion Sort
#include<stdio.h>
#define MAX 7
int main(void) {
int a[MAX]={7,2,4,1,9,5,10};
int i, j, index;
for (i=1; i < MAX; i++)
{
index = a[i];
j = i;
while ((j > 0) && (a[j-1] > index)){
a[j] = a[j-1];
j = j - 1;
}
a[j] = index;
}
return 0;
}
/************************************************************************/
//
#include<stdio.h>
char Result(int grade){
return grade >= 90 ? 'A' :
((grade >= 80) ? 'B' :
((grade >= 70) ? 'C' :
((grade >= 60) ? 'D' : 'F' )));
}
int main(void){
int student[]={0,45,67,97,88,75,56,80,60,79,83,91,62};
int i;
char Letter1,Letter2,Letter3;
for(i=0;i<=10;i+=3){
Letter1=Result(student[i]);
Letter2=Result(student[i+1]);
Letter3=Result(student[i+2]);
}
return 0;
}
/**************************************************************/
//Slow GCD-like
#include<stdio.h>
int main(void){
int A=15;
int B=10;
int C=B;
while(!( (A%C)==0 && (B%C)==0 ) ) C--;
A=A/C;
B=B/C;
return 0;
}