Code Workshop 3

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 10

Program 1:

#include<stdio.h>

#include<math.h>

int prime (int n)

int m = sqrt(n);

int i;

if(n <2) return 0;

for(i=2; i<= m ; i++)

if (n % i == 0) return 0;

} return 1;

int main(){

int n, i ;

do {

printf(" Nhap n: ");

scanf("%d",&n);

while(n<2);

for (i = 2 ; i <=n ; i++)

if ( prime ( i)==1)

printf("%d ", i);

return 0;

}
Program 2:
#include<stdio.h>

#include <stdlib.h>

int validDate (int d, int m, int y)

int maxd=31;

if(d <1 || d> 31 || m<1 || m >12) return 0 ;

if( m ==4 || m == 6 || m ==9 || m == 11) maxd = 30;

else if(m==2)

if ( y%400==0 || y%4==0 && y%100!=0 ) maxd=29;

else maxd=28;

return d<=maxd;

int main()

int d, m , y ;

printf("Enter the day: "); scanf("%d", &d);

printf("Enter the month: "); scanf("%d", &m);

printf("Enter the year: "); scanf("%d", &y);

if (validDate(d, m, y)==1)

printf ("The date of %d/%d/%d is a valid date!\n", d, m ,y);

} else

printf("The date of %d/%d/%d is not a valid date!\n", d, m ,y);

return 0;

}
Program 3:
#include<stdio.h>

#include<math.h>

int getRelPos (double x, double y, double r)

double d2=x*x + y*y;

double r2= r*r;

if (d2<r2) return 1;

else if (d2==r2) return 0;

return -1;

int main()

double x,y,r, result;

printf("Enter:x ");

scanf("%lf",&x);

printf("Enter:y ");

scanf("%lf",&y);

do {

printf("Enter:r ");

scanf("%lf",&r);

while(r<0);

result = getRelPos(x,y,r);

if(result==1)

{printf ("The point is in the circle!");}

else if (result==0)

{printf ("The point is in the circle!");}

else{printf ("The point is in the circle!");

return 0;

}
Program 4:
#include<stdio.h>

#include <stdlib.h>

double factorial(int n)

double p =1 ;

int i ;

for ( i = 2 ; i <= n ; i ++) p*= i;

return p;

int main()

int n;

do

printf(" Enter n : "); scanf("%d",&n);

while (n<0);

printf(" Factorial is : %4.lf ",factorial(n));

return 0 ;

}
Program 5:
#include<stdio.h>

double fibo ( int n)

int t1=1, t2=1, f=1, i ;

for ( i= 3; i<=n; i++)

f= t1 + t2;

t1= t2;

t2=f;

return f;

int main()

int n ;

do

printf(" Enter n: "); scanf("%d",&n);

while (n<1);

printf("The value at the nth position in Fibonacci sequence is : %4.lf",fibo(n));

return 0;

}
Program 6:
#include<stdio.h>

int isFibonacci (int n)

{ int t1=1, t2=1, f=1;

if (n==1)

return 1;

while (f<n)

f=t1+t2;

t1=t2;

t2=f;

return n==f;

int main()

int n;

do

printf("Enter n: ");

scanf("%d",&n);

while (n<1);

if (isFibonacci(n)==1)

printf("It is a Fibonacci element");

else printf("It is not a Fibonacci element");

return 0;

}
Program 7:
#include<stdio.h>

int sumDigits (int n)

int sum=0;

do

int remainder = n%10 ;

n = n/10;

sum += remainder;

while (n>0);

return sum;

int main()

int s,n ;

do

{ printf(" \nEnter n : "); scanf("%d",&n);

if (n>=0)

{ s = sumDigits(n);

printf(" S = %d ",s);

while (n>=0);

return 0;

}
Program 8:
#include<stdio.h>

#include <stdlib.h>

double makeDouble(int ipart, int fraction)

double d_f= fraction;

while (d_f >=1) d_f = d_f/10;

if (ipart<0) return ipart - d_f;

return ipart + d_f ;

int main(){

int ipart, fraction ;

double value ;

printf("Enter ipart: ");scanf("%d",&ipart);

do

{printf("Enter fraction : ");scanf("%d",&fraction); }

while ( fraction < 0 );

value = makeDouble(ipart,fraction);

printf("Value is : %lf",value);

return 0;

}
Program 9:
#include<stdio.h>

int gcd( int a, int b)

{ while ( a != b )

if (a>b) {a -=b;}

else

{ b -= a; }

return a;

int lcm ( int a, int b)

{ return a*b/ gcd(a,b);

int main()

int a , b, d , m ;

do

printf("Enter a: ");scanf("%d",&a);

printf("Enter b: ");scanf("%d",&b);

while ( a<=0 || b <=0);

d = gcd(a,b);

m = lcm (a,b);

printf(" d = %d",d);

printf(" m = %d",m);

return 0;

}
Program 10:
#include <stdio.h>

void printMinMaxDigits( int n)

int digit;

int min, max ;

digit = n % 10;

n = n / 10;

min = max = digit;

while (n > 0)

digit = n % 10;

n = n / 10;

if (min > digit) min = digit;

if (max < digit) max = digit;

printf("Max digit : %d\n", max);

printf("Min digit : %d\n", min);

int main()

int n;

do

printf(" Enter n : ");

scanf("%d", &n);

printMinMaxDigits(n);

} while( n < 0);

return 0;

You might also like