Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Innokk
0 / 0 / 0
Регистрация: 19.12.2010
Сообщений: 3
#1

Массивы и Функции... - C++

19.12.2010, 21:06. Просмотров 269. Ответов 0
Метки нет (Все метки)

помогите пожалуйста с главной фунцкцией...не могу никак сделать

Код
#include <stdio.h>
#include <stdlib.h>
#define N 40
#define M 30
#define P 70
#define S 70
#define T 70


void Title();//zagolovok
void Zapolnenie(int a[N], int b[M], int i, int y);//zapolnenie 2-h massiviv sly4 elementami
void Otbor1(int c[P], int i);//otbor 4isel -10 do 10
void Otbor2(int d[S], int i);//otbor 4isel ot 20 do 50
void Obedinenie(int e[T], int i);//obedinenie otobrannih massivov
void Pyzirek(int e[T], int i);//sortirovka pyzirkom
void Poisk(int e[T], int i);//sortirovka Prjamogo Poiska
void Vklju4enie(int e[T], int i);//sortirovka Prjamogo Vklju4enija



void main()
{
    int i,y;
    int a[N], b[M], c[P], d[S], e[T];
    int random(int u)
    {int x;
        x=rand();
        x=(int)(((float)x/0x7FFF)*u);
        return x;
    }
    Title();
    Zapolnenie(a[i]);
    Otbor1(c[i]);
    Otbor2(d[i]);
    Obedinenie(e[i]);
    Pyzirek(e[i]);
    Poisk(e[i]);
    Vklju4enie(e[i]);
    system("PAUSE");
}

void Title()
{
    printf("Zapolnit 2 massiva, razmerom 40 i 30 elementov, sootvetstvenno");
    printf("sly4ajnimi celimi 4islami v diapazone ot -50 do 50.");
    printf("Iz poly4. 2-h massiviv sozdajte 2 massiva otdelno,1 iz kotoryh");
    printf("soderzhit 4isla ot 10 do -10, a drygoj ot 20 do 50");
    printf("Provedite sortirovky poly4.massivov po vozrastaniju.");
    printf("Dlja kontrolja sdelajte raspe4atky vseh massivov");
}


void Zapolnenie(int a[N], int b[M], int i, int y)
{ int a[N+1]; int i;
    printf("Zapolnite odnomernij massiv slu4 4islami. \n");
    printf("Diapazon 4isel ot -50 do +50. \n");
        for (i=0; i<=N-1; i++) a[i]=random (-100)+50;
            printf("Raspe4atka massiva \n");
        for (i=0; i<=N-1; i++) printf("%4d",a[i]);
            printf("\n");

    int b[M+1]; int y;
    printf("Zapolnite odnomernij massiv slu4 4islami. \n");
    printf("Diapazon 4isel ot -50 do +50. \n");
        for (y=0; y<=M-1; y++) b[y]=random (-100)+50;
            printf("Raspe4atka massiva \n");
        for (y=0; y<=M-1; y++) printf("%4d",b[y]);
            printf("\n");
}


void Otbor1(int c[P], int i)
{
printf("\n");
printf("Massiv soderzh 4isla ot -10 do 10. \n");
int c[P]; int k = 0;
    for (i=0; i<=N-1; i++)
    {
        if ((a[i]<=10) && (a[i]>=-10))
        {
            c[k] = a[i];
            k=k+1;
        }
    }
    for (y=0; y<=M-1; y++)
    {
        if ((b[y]<=10) && (b[y]>=-10))
        {
            c[k] = b[y];
            k=k+1;
        }
    }
for (i=0; i<=k-1; i++) printf("%4d",c[i]);
    printf("\n");
    printf("\n");
    printf("\n");
}


void Otbor2(int d[S], int i)
{
printf("\n");
printf("Massiv soderzh 4isla ot 20 do 50. \n");
int d[S]; int l = 0;
    for (i=0; i<=N-1; i++)
    {
        if ((a[i]<=50) && (a[i]>=20))
        {
            d[l] = a[i];
            l=l+1;
        }
    }
    for (y=0; y<=M-1; y++)
    {
        if ((b[y]<=50) && (b[y]>=20))
        {
            d[l] = b[y];
            l=l+1;
        }
    }
for (i=0; i<=l-1; i++) printf("%4d",d[i]);
printf("\n");
printf("\n");
printf("\n");
}


void Obedinenie(int e[T], int i)
{
printf("Ob'edinenie massivov C i D \n");
int e[T]; int v, r=0;
    for (i=0; i<=k-1; i++)
    {
        e[v] = c[i];
        v=v+1;
    }
    for (i=0; i<=l-1; i++)
    {
        e[v] = d[i];
        v=v+1;
    }
for (i=1; i<=v-1; i++) printf("%4d",e[i]);
printf("\n");
}

void Pyzirek(int e[T], int i)
{
printf("\n");
printf("Sortirovka metodom Pyzir'ka\n");
for (i=1;i<=(k+l);i++)
    for (v=1;v<=(k+l);v++)
    {
        if (e[i]<e[v])
        {
            r=e[i];
            e[i]=e[v];
            e[v]=r;
        }
    }
for (i=1; i<=(k+l); i++) printf("%4d",e[i]);
printf("\n");
printf("\n");
}


void Poisk(int e[T], int i)
{
printf("Sortirovka metodom Prjamogo poiska\n");
int m;
int min;
    for (i=1;i<=(k+l);i++)
    {
        m=i; min=e[i];
    for (v=i+1;v<=(k+l); v++)
    {
        if (e[v]<min)
            { min=e[v]; m=v; }
    }
        e[m]=e[i]; e[i]=min;
    }
for (i=1; i<=(k+l); i++) printf("%4d",e[i]);
printf("\n");
printf("\n");
}


void Vklju4enie(int e[T], int i)
{
printf("Sortirovka metodom Prjamogo vklju4enija\n");
int tmp;
for (i=2; i<=(k+l); i++) /* в переменной i - индекс включаемого элемента */
    { /* включение i-того элемента */
        m=i; // Начальное значение индекса цикла включения
        e[0]=e[i]; // Установка барьера
        while (e[m]<e[m-1]) // включение
        { // Обмен с предыдущим элементом местами
            tmp = e[m]; e[m] = e[m-1]; e[m-1]= tmp;
            m--; // включение идет к началу массива
        }
    }
for (i=1; i<=(k+l); i++) printf("%4d",e[i]);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.12.2010, 21:06     Массивы и Функции...
Посмотрите здесь:

Массивы и функции C++
C++ Функции / Массивы
Массивы и функции C++
массивы и функции C++
массивы и функции C++
массивы и функции C++
массивы и функции C++
C++ Функции (массивы)
Массивы и функции C++
C++ Массивы и функции
C++ функции и массивы

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru