728x90 AdSpace

  • Latest News

    Saturday, May 12, 2012

    Various Code C / C + +

    1. Magic square

    #include<stdio.h>
    #include<conio.h>

    void main() {
    int kolom,baris,n,spasi;
    do {
    clrscr();
    gotoxy(15,2); printf("Program Persegi Ajaib Punyaku");
    gotoxy(3,5);
    printf("Masukkan Panjang Sisi : "); scanf("%d",&n);
    gotoxy(3,7); printf("Persegi dengan panjang sisi %d\n\n",n);
    for(baris=1;baris<=n;baris++)
    { printf("* "); }

    printf("\n");

    for(kolom=1;kolom<=n-2;kolom++)
    { printf("*");
    for(spasi=1;spasi<=n*2-3;spasi++)
    { printf(" "); }
    printf("*\n");
    }

    for(baris=1;baris<=n;baris++)
    {
    printf("* ");
    }
    gotoxy(3,23); printf("tekan tombol \"y\" untuk mengulang");
    gotoxy(3,24); printf("tekan sembarang tombol untuk keluar");
    }
    while(getch()=='y');





    2. sloping sides, area, and circumference of the triangle

    #include<stdio.h>
    #include<conio.h>
    #include<math.h>

    void main()
    {

    float a,t,r,K,L;


    scanf("%f%f",&a,&t);

    r=sqrt(a*a+t*t);

    K=a+r+t;

    L=(a*t)/2;

    printf("r=%.2f, K= %.2f, L= %.2f",&r,&K,&L);

    getch();
    }
     


    3. Binary Search Tree

    #include <stdio.h>
    #include <conio.h>
    #include <malloc.h>

    struct data{
    int angka;
    struct data *left, *right;
    }*root = NULL;

    void menu(void){
    gotoxy(1,23); printf("+ to insert");
    gotoxy(40,23); printf("- to seek and destroy");
    gotoxy(1,24); printf("Esc to Exit");
    }

    void insert (struct data **p, int angka, int level){
    level += 1;
    if( level < 6){
    if( (*p) == NULL ){
    (*p) = (struct data *) malloc (sizeof (struct data) );
    (*p) -> angka = angka;
    (*p) -> left = (*p) -> right = NULL;
    }
    else if( angka < (*p)-> angka ){
    insert(& (*p) -> left, angka, level);
    }
    else if( angka > (*p)-> angka ){
    insert(& (*p) -> right, angka, level);
    }
    }
    else{
    textcolor(14);
    gotoxy(1,25); cprintf("Level Tree telah mencapai Maksimum");
    textcolor(7);
    getch();
    }
    }

    void clearall (struct data *p){
    if(p==NULL) return;
    clearall(p -> left);
    clearall(p -> right);
    free(p);
    }

    void cetak(struct data *p, int x, int y, int j){
    if(p == NULL) return;
    gotoxy(x,y);
    printf("%d", p-> angka);

    cetak(p -> left, x-j, y+2, j/2);
    cetak(p -> right, x+j, y+2, j/2);
    }

    void preorder(struct data *p){
    if(p==NULL) return;

    printf("%d ", p->angka);
    preorder(p -> left);
    preorder(p -> right);
    }

    void inorder(struct data *p){
    if(p==NULL) return;

    inorder(p -> left);
    printf("%d ", p->angka);
    inorder(p -> right);
    }

    void postorder(struct data *p){
    if(p==NULL) return;

    postorder(p -> left);
    postorder(p -> right);
    printf("%d ", p->angka);
    }

    void print_order(void){
    gotoxy(1,19); printf("PreOrder : "); preorder(root);
    gotoxy(1,20); printf("InOrder : "); inorder(root);
    gotoxy(1,21); printf("PostOrder : "); postorder(root);
    }

    void seekndestroy(struct data *p, int angka){
    if( p == NULL) return;
    else if( angka < p -> angka){
    if( p -> left -> angka == angka){
    clearall (p -> left);
    p -> left = NULL;
    }
    else{
    seekndestroy( p -> left, angka);
    }
    }
    else if( angka > p -> angka){
    if( p -> right -> angka == angka){
    clearall (p -> right);
    p -> right = NULL;
    }
    else{
    seekndestroy( p -> right, angka);
    }
    }
    }

    void main(){
    int tekan, angka;
    do{
    clrscr();
    menu();
    cetak(root, 40, 2, 20);
    print_order();
    tekan = getch();
    switch(tekan){
    case '+' : gotoxy(1,16); printf("Masukkan Angka : ");
    scanf("%d",&angka);
    insert(&root, angka,0);
    break;

    case '-' : gotoxy(1,16); printf("Masukkan Angka : ");
    scanf("%d",&angka);
    if(root == NULL){
    textcolor(14);
    gotoxy(1,25); cprintf("Tidak ada Data yang bisa dihapus");
    textcolor(7);
    getch();
    }
    else if(angka == root -> angka ){
    textcolor(14);
    gotoxy(1,25); cprintf("Root Tidak Boleh Dihapus");
    textcolor(7);
    getch();
    }
    else if(root !=NULL){
    seekndestroy(root, angka);
    }
    break;
    }
    }while(tekan != 27);
    clearall(root);
    }

    4. Faktorial

    #include<stdio.h>
    #include<conio.h>

    long faktor(int n)
    {
    if(n==0)return 1;
    else return n*faktor(n-1);
    }

    void main()
    {

    int n;

    printf("masukkan n : ");
    scanf("%d",&n);
    printf("n faktorial=%d ",faktor(n));

    getch();
    }

    5. Fibonacci

    #include<stdio.h>
    #include<conio.h>

    int fib(int n)
    {
    int f;
    if (n==0)f=0;
    else if(n==1)f=1;
    else f=fib(n-2)+fib(n-1);
    return f;

    }

    void main()
    {
    int n;

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

    printf("bilangan fibonacci dari %d = %d",n,fib(n));

    getch();
    }

    6. he rebound

    #include<stdio.h>
    #include<conio.h>
    //#include<dos.h>

    void delay(int i) {
    int n,m,o;
    for(n=0;n<i;n++){
    for(m=0;m<i;m++){
    for(o=0;o<i;o++) { } } }
    }

    void main() {
    int x=15,y=4,ax=1,by=1;
    clrscr();
    _setcursortype(_NOCURSOR);
    do {
    gotoxy(x,y);
    printf("hello");
    delay(250);
    gotoxy(x,y);
    printf(" ");
    if(x<2 || x>74) {
    ax*=-1; //increament or decreament
    }
    if(y<2 || y>24) {
    by*=-1; //increament or decreament
    }

    x+=ax;
    y+=by;
    }
    while(!kbhit());
    }  
    • Blogger Comments
    • Facebook Comments

    0 comments:

    Post a Comment

    Item Reviewed: Various Code C / C + + Rating: 5 Reviewed By: Unknown
    Scroll to Top