0% found this document useful (0 votes)
11 views

Code Workshop 3

The document contains 10 C programs that demonstrate different programming concepts like prime numbers, date validation, point in circle, factorials, Fibonacci series, digit sum, double precision numbers, GCD, LCM and minimum and maximum digits in a number.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views

Code Workshop 3

The document contains 10 C programs that demonstrate different programming concepts like prime numbers, date validation, point in circle, factorials, Fibonacci series, digit sum, double precision numbers, GCD, LCM and minimum and maximum digits in a number.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 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