воскресенье, 29 января 2012 г.

100!

//100! ба өөр том тооны факториал


#include<stdio.h>
#define MAX 10000
void factorialof(int);
void multiply(int);
int length = 0;
int fact[MAX];
int main(){
    int num;
    int i;
    printf("Duryn buhel eyereg too oruulna uu = ");
    scanf("%d",&num);
   
    fact[0]=1;
    factorialof(num);
   
    printf("Factorial = ");
    for(i=length;i>=0;i--){
         printf("%d",fact[i]);
    }
    return 0;
}
void factorialof(int num){
    int i;
    for(i=2;i<=num;i++){
         multiply(i);
    }
}
void multiply(int num){
    long i,r=0;
    int arr[MAX];
    for(i=0;i<=length;i++){
                arr[i]=fact[i];
        }
    for(i=0;i<=length;i++){
         fact[i] = (arr[i]*num + r)%10;
         r = (arr[i]*num + r)/10;
         //printf("%d ",r);
    }
    if(r!=0){
         while(r!=0){
             fact[i]=r%10;
             r= r/10;
             i++;
         }
    }
    length = i-1;   
}

/*
Factorial 100! =
933262154439441526816992388562667004907159
682643816214685929638952175999932299156089
414639761565182862536979208272237582511852
1091686400000000000
*/

Төгс тоо 3

//1-с 100 завсарт буй төгс тоо
#include<stdio.h>
int main(){
  int n,i,sum;
 
  printf("Tugs too n = ");
  for(n=1;n<=100;n++){
    i=1;
    sum = 0;
    while(i<n){
      if(n%i==0)
           sum=sum+i;
          i++;
    }
    if(sum==n)
      printf("%d ",n);
  }
  return 0;
}

/*Жишээ
Tugs too n = 6 28*/

Төгс тоо 2

//min max доторх төгс тоог ол
#include<stdio.h>
int main(){
  int n,i,sum;
  int min,max;
  printf("Min = ");
  scanf("%d",&min);
  printf("Max = ");
  scanf("%d",&max);
  printf("min max zavsar dahi tugs too ");
  for(n=min;n<=max;n++){
    i=1;
    sum = 0;
    while(i<n){
      if(n%i==0)
           sum=sum+i;
          i++;
    }
    if(sum==n)
      printf("%d ",n);
  }
  return 0;
}
/*
Жишээ:
Min = 1
Max = 20
min max zavsar dahi tugs too 6
*/

Төгс тоо 1

/*
 Натурал тоо өөрөөсөө бусад бүх хуваагчдынхаа нийлбэртэй тэнцүү байвал түүнийг төгс тоо гэнэ. 6 гэсэн тоо нь төгс тоо ба учир нь 6 = 1+2+3 юм. Харин 8 бол төгс тоо биш, учир нь 8 ≠ 1+2+4.
n натурал тоо өгөгдөв. Уг тооноос бага байх бүх төгс тоог ол
*/

#include<stdio.h>
int main()
{
  int n,i=1,sum=0;
  printf("Too oruulna uu = ");
  scanf("%d",&n);
  while(i<n){
      if(n%i==0)
           sum=sum+i;
          i++;
  }
  if(sum==n)
      printf("%d n tugs too mun ",i);
  else
      printf("%d n tugs too bish",i);
  return 0;
}
/*
Жишээ:
Too oruulna uu = 6
6 n tugs too mun
*/

четверг, 26 января 2012 г.

Анхны тоо 5


//min max завсарын анхны тоонууд
//for давталт ашиглалаа
#include<stdio.h>
int main(){
    int num,i,count,min,max;
     printf("min = ");
     scanf("%d",&min);
    printf("max = ");
    scanf("%d",&max);
    for(num = min;num<=max;num++){
         count = 0;
         for(i=2;i<=num/2;i++){
             if(num%i==0){
                 count++;
                 break;
             }
        }
        
         if(count==0 && num!= 1)
             printf("%d ",num);
    }
   getch();
   return 0;
}
Жишээ:
min = 10
max = 50
11 13 17 19 23 29 31 37 41 43 47

Анхны тоо 4

//min max завсарт орших анхны тоонууд
//while давталт ашиглав
#include<stdio.h>
int main(){
   int num,i,count,min,max;
printf("min = ");
    scanf("%d",&min);
    printf("max = ");
    scanf("%d",&max);
    num = min;
    while(num<=max){
         count = 0;
         i=2;
         while(i<=num/2){
             if(num%i==0){
                 count++;
                 break;
             }
             i++;
        }
        
         if(count==0 && num!= 1)
             printf("%d ",num);
         num++;
    }
   getch();
   return 0;
}
Жишээ:
min = 50
max = 100
53 59 61 67 71 73 79 83 89 97

Анхны тоо 3

//1 n завсарын анхны тоонууд
#include<stdio.h>
int main(){
    int num,i,count,n;
    printf("N = ");
    scanf("%d",&n);
    for(num = 1;num<=n;num++){
         count = 0;
         for(i=2;i<=num/2;i++){
             if(num%i==0){
                 count++;
                 break;
             }
        }
        
         if(count==0 && num!= 1)
             printf("%d ",num);
    }
   getch();
   return 0;
}
Жишээ:
N = 50
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47

Анхны тоо 2

//1-с 100-н хоорондох анхны тоонууд
#include<stdio.h>
int main(){
    int num,i,count;
  
    for(num = 1;num<=100;num++){
         count = 0;
         for(i=2;i<=num/2;i++){
             if(num%i==0){
                 count++;
                 break;
             }
        }
        
         if(count==0 && num!= 1)
             printf("%d ",num);
    }
   getch();
   return 0;
}
 
Хариу:
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97