Kênh Tên Miền chuyên cung cấp tên miền đẹp, giá rẻ! Hãy liên hệ kỹ thuật: 0914205579 - Kinh doanh: 0912191357 để được tư vấn, hướng dẫn miễn phí, Cảm ơn quý khách đã ủng hộ trong thời gian qua!
kiem tien, kiem tien online, kiem tien truc tuyen, kiem tien tren mang
Thứ Bảy, 19 tháng 5, 2012


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

struct Node

{

    Node* pLeft;

    Node* pRight;

    int iX;

};

typedef Node* Tree;

Node* TaoNode(int X)

{

    Node* p = new Node;

    if (p == NULL)

        return NULL;

    p->pLeft = NULL;

    p->pRight = NULL;

    p->iX=X;

    return p;

}

void ThemNodeVaoCay(Node* p, Tree &c)

{

    if (c == NULL)//nếu cây rỗng

        c = p;

    else //cây khác rỗng

    {

        if (p->iX < c->iX)

            ThemNodeVaoCay(p,c->pLeft);

        else if (p->iX > c->iX)

            ThemNodeVaoCay(p,c->pRight);

        else

            return;

    }

}

void Nhap(Tree &c)

{

    int chon = 0;

    do

    {

        int x ,i=1;

        printf("\n Nhap nut %d : ",i);

        scanf_s("%d",&x);

        Node* p = TaoNode(x);

        ThemNodeVaoCay(p,c);

        printf("Nhap 1 de tiep tuc :");
        scanf_s("%d",&chon);
i=i+1;

    }while(chon==1);

}

void Xuat(Tree c)

{

    if (c!=NULL)

    {

        if (c->pLeft != NULL)

            Xuat(c->pLeft);

        printf("%4d", c->iX);

        if (c->pRight != NULL)

            Xuat(c->pRight);

    }

}

//Đếm số lượng nút có đúng 1 con mà thông tin tại đó là số nguyên tố

bool SoNguyenTo(int n)

{

    if (n<=1)

        return 0;

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

        if (n%i == 0)

            return 0;

    return 1;

}

int Dem(Tree c)

{

    if (c!=NULL)

    {

        int a = Dem(c->pLeft);

        int b = Dem(c->pRight);

        if (SoNguyenTo(c->iX))

            if ((c->pLeft!=NULL && c->pRight==NULL) || (c->pLeft==NULL && c->pRight!=NULL))

                return 1 + a + b;

        return a + b;

    }

    return 0;

}


void main()

{

    Tree c = NULL;

    Nhap(c);

    printf("\n Xuat cay nhi phan LNR: ");

    Xuat(c);

    printf("\n  So luong nut co dung 1 con va gia tri la so nguyen to: %d", Dem(c));

getch();  

}

0 nhận xét:

Đăng nhận xét

domain, domain name, premium domain name for sales

Popular Posts