Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.



 
Trang ChínhTrang Chính  Tìm kiếmTìm kiếm  Latest imagesLatest images  Đăng kýĐăng ký  Đăng NhậpĐăng Nhập  

Share | 
 

 [Mảng 1 chiều]- Trộn dãy

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down 
Tác giảThông điệp
Tboy
Cá voi
Cá voi
Tboy


Nam Tổng số bài gửi : 178
Cảm ơn : 413
Danh vọng : 4
Join date : 03/01/2011
Age : 32
Đến từ : TPHCM

[Mảng 1 chiều]- Trộn dãy  Empty
Bài gửiTiêu đề: [Mảng 1 chiều]- Trộn dãy    [Mảng 1 chiều]- Trộn dãy  EmptyThu Mar 10, 2011 7:32 pm

[Mảng 1 chiều]- Trộn dãy  Titleb10 Thu Mar 10, 2011 7:32 pm » [Mảng 1 chiều]- Trộn dãy [Mảng 1 chiều]- Trộn dãy  Titleb13
Đề: Nhập 2 dãy số nguyên b tăng dần và c giảm dần. Trộn 2 dãy b,c thành dãy a tăng dần (không cho phép sắp xếp trên dãy a).

Code:
#include <stdio.h>
#include <conio.h>
#define Max 100
void Nhaptang(int A[],int N);
void Nhapgiam(int A[],int N);
void Xuat(int A[],int N);
void main()
{
    int a[Max],b[Max],c[2*Max],k=0,i=0,j=0,m,n;
//Nhap xuat day a
    do
    {
        printf("Nhap n: ");
        scanf("%d",&n);
    }while(n<1||n>Max);
    printf("Nhap day tang:\n");
    Nhaptang(a,n);
    printf("Day vua nhap: ");
    Xuat(a,n);
//Nhap xuat day b
    do
    {
        printf("Nhap m: ");
        scanf("%d",&m);
    }while(m<1||m>Max);
    printf("Nhap day giam:\n");
    Nhapgiam(b,m);
    printf("Day vua nhap: ");
    Xuat(b,m);
//Tron day
    while(i+j<m+n-1)
    {
        while(b[m-1-i]<a[j])
            c[k++]=b[m-1-i++];
        c[k++]=a[j++];
    }
    printf("Mang tron: ");
    Xuat(c,n+m);
}
void Nhaptang(int A[],int N)
{
    for(int i=0;i<N;i++)
        do
        {
            printf("A[%d]= ",i+1);
            scanf("%d",&A[i]);
        }while(A[i]<A[i-1]&&i>0);
}
void Nhapgiam(int A[],int N)
{
    for(int i=0;i<N;i++)
        do
        {
            printf("A[%d]= ",i+1);
            scanf("%d",&A[i]);
        }while(A[i]>A[i-1]&&i>0);
}
void Xuat(int A[],int N)
{
    for(int i=0;i<N;i++)
        printf("%d ",A[i]);
    printf("\n");
}

Code:
#include <stdio.h>
#include <conio.h>
#include <malloc.h>
#define Max 100
int *Nhaptang(int N);
int *Nhapgiam(int N);
void Xuat(int A[],int N);
int *Tron(int *A,int *B,int N,int M);
void main()
{
    int *a,*b,*c,k=0,i=0,j=0,m,n;
//Nhap xuat day a
    do
    {
        printf("Nhap n: ");
        scanf("%d",&n);
    }while(n<1||n>Max);
    printf("Nhap day tang:\n");
    a=Nhaptang(n);
    printf("Day vua nhap: ");
    Xuat(a,n);
//Nhap xuat day b
    do
    {
        printf("Nhap m: ");
        scanf("%d",&m);
    }while(m<1||m>Max);
    printf("Nhap day giam:\n");
    b=Nhapgiam(m);
    printf("Day vua nhap: ");
    Xuat(b,m);
//Xuat day tron
    c=Tron(a,b,n,m);
    printf("Mang tron: ");
    Xuat(c,n+m);
    getch();
}
int *Nhaptang(int N)
{
    int *tmp;
    tmp=(int *)malloc(N*sizeof(int));
    for(int i=0;i<N;i++)
        do
        {
            printf("A[%d]= ",i+1);
            scanf("%d",&tmp[i]);
        }while(tmp[i]<tmp[i-1]&&i>0);
    return tmp;
}
int *Nhapgiam(int N)
{
    int *tmp;
    tmp=(int *)malloc(N*sizeof(int));
    for(int i=0;i<N;i++)
        do
        {
            printf("A[%d]= ",i+1);
            scanf("%d",&tmp[i]);
        }while(tmp[i]>tmp[i-1]&&i>0);
    return tmp;
}
void Xuat(int *A,int N)
{
    for(int i=0;i<N;i++)
        printf("%d ",A[i]);
    printf("\n");
}
int *Tron(int *A,int *B,int N,int M)
{
    int *tmp,i=0,j=0,k=0;
    tmp=(int *)malloc((N+M)*sizeof(int));
    while(i+j<M+N-1)
    {
        while(B[M-1-i]<A[j])
            tmp[k++]=B[M-1-i++];
        tmp[k++]=A[j++];
    }
    return tmp;
}


Tboy

[Mảng 1 chiều]- Trộn dãy  Border10 [Mảng 1 chiều]- Trộn dãy  Border14
Về Đầu Trang Go down
https://taplaptrinh.forumvi.com
 

[Mảng 1 chiều]- Trộn dãy

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang 

 Similar topics

-
» Trộn dãy-(Mảng 1 chiều-Biến đổi trên mảng)
» Chèn mảng vào mảng-(Mảng 1 chiều-Biến đổi trên mảng)
» Xóa một phần tử khỏi mảng-(Mảng 1 chiều-Biến đổi trên mảng)
» Xóa một phần tử khỏi mảng-(Mảng 1 chiều-Biến đổi trên mảng)
» Di chuyển mảng-(Mảng 1 chiều-Biến đổi trên mảng)
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
 :: Cơ sở lập trình 1 :: Bài tập khác-