Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
29
Добавлен:
28.01.2014
Размер:
107.72 Кб
Скачать

БАЛАКОВСКИЙ ИНСТИТУТ ТЕХНИКИ, ТЕХНОЛОГИИ И УПРАВЛЕНИЯ

ФАКУЛЬТЕТ ИНЖЕНЕРНО – СТРОИТЕЛЬНЫЙ

КАФЕДРА «ИНФОРМАЦИОННЫЕ СИСТЕМЫ И ТЕХНОЛОГИИ»

Лабораторная работа №7

по дисциплине «ЛОГИЧЕСКОЕ ПРОГРАММИРОВАНИЕ»

Выполнил:

ст. гр. ИСТ – 21

Никонова А.С.

Проверил:

асс. каф. ИСТ

Алиева Е.В.

______________

«___»___________2009г.

Балаково

Задание: Заполнить строку случайными числами. Отсортировать ее по убыванию и возрастанию методом пузырька, вставкой, посредством выбора.

  • сортировка по возрастанию методом пузырька

Программный код:

#include "stdafx.h"

#include "stdio.h"

#include "conio.h"

#include "stdlib.h"

void main()

{

int a[15], a1[15], g[15];

int i,j,b,c;

for (int i=0; i<15; i++){

a[i]=rand()%9+1;

printf("%i ",a[i]);

}

for (int i=0;i<15;i++){

a1[i]=0;

}

printf ("\n");

printf ("\n");

for (int i=0;i<14;i++){

for (j=i; j<=14; j++){

if (a[i]>a[j])

{

c=a[i];

a[i]=a[j];

a[j]=c;

}

}for (j=0;j<=14;j++){

printf ("%i ",a[j]);}printf ("\n");}

getch();}

Результат работы программы:

  • сортировка по убыванию методом пузырька

Программный код:

#include "stdafx.h"

#include "stdio.h"

#include "conio.h"

#include "stdlib.h"

void main()

{

int a[15], a1[15], g[15];

int i,j,b,c;

for (int i=0;i<15;i++)

{

a[i]=rand()%9+1;

printf("%i ",a[i]);

}

for (int i=0;i<15;i++)

{

a1[i]=0;

}

printf ("\n");

printf ("\n");

for (int i=0;i<14;i++)

{

for (j=i;j<=14;j++)

{

if (a[i]<a[j])

{

c=a[i];

a[i]=a[j];

a[j]=c;

}

}for (j=0;j<=14;j++){

printf ("%i ",a[j]);}printf ("\n");}

getch();}

Результат работы программы:

  • сортировка по возрастанию методом вставкой

Программный код:

#include "stdafx.h"

#include "stdio.h"

#include "conio.h"

#include "stdlib.h"

void main()

{

int a[15], a1[15], g[15];

int i,j,b,c,e,d,k, min, k1;

for (int i=0;i<15;i++)

{

a[i]=rand()%9+1;

printf("%i ",a[i]);

}

for (int i=0;i<15;i++){

a1[i]=0;

}

printf ("\n");

printf ("\n");

a1[0]=a[0];

for(i=0;i<15;i++){

if(i==0)a1[i]=a[i];

else

{

for(j=i;j>=1;j--)

{if(a[i]<a1[j-1]){

a1[j]=a1[j-1];

a1[j-1]=a[i];

}

else if(j==i)a1[j]=a[i];

}}

for(k=0;k<15;k++){

printf("%i ",a1[k]);

}

printf("\n");

}

getch();}

Результат работы программы:

  • сортировка по убыванию методом вставкой

Программный код:

#include "stdafx.h"

#include "stdio.h"

#include "conio.h"

#include "stdlib.h"

void main()

{

int a[15], a1[15], g[15];

int i,j,b,c,e,d,k, min, k1;

for (int i=0;i<15;i++){

a[i]=rand()%9+1;

printf("%i ",a[i]);

}

for (int i=0;i<15;i++){

a1[i]=0;

}

printf ("\n");

printf ("\n");

a1[0]=a[0];

for(i=0;i<15;i++){

if(i==0)a1[i]=a[i];

else{

for(j=i;j>=1;j--){

if(a[i]>a1[j-1])

{

a1[j]=a1[j-1];

a1[j-1]=a[i];

}

else if(j==i)a1[j]=a[i];}

for(k=0;k<15;k++){

printf("%i ",a1[k]);

}

printf("\n");}}

getch();}

Результат работы программы:

  • сортировка по возрастанию посредством выбора

Программный код:

#include "stdafx.h"

#include "stdio.h"

#include "conio.h"

#include "stdlib.h"

void main()

{

int a[15], a1[15], g[15];

int i,j,b,c,e,d,k, min, k1;

for (int i=0;i<15;i++){

a[i]=rand()%9+1;

printf("%i ",a[i]);

}

for (int i=0;i<15;i++){

a1[i]=0;

}

printf ("\n");

printf ("\n");

min=a[0];

k=0;

for(i=0; i<15; i++){

min=a[i];

k=i;

for(j=1; j<15; j++){

if(a[j]<min){

min=a[j];

k=j;}}

g[i]=min;

a[k]=123131;

for(int k1=0; k1<i; k1++){

printf("%i ",g[k1]);

}

printf("\n");}

getch();}

Результат работы программы:

  • сортировка по убыванию посредством выбора

Программный код:

#include "stdafx.h"

#include "stdio.h"

#include "conio.h"

#include "stdlib.h"

void main()

{

int a[15], a1[15], g[15];

int i,j,b,c,e,d,k, min, k1;

for (int i=0;i<15;i++)

{

a[i]=rand()%9+1;

printf("%i ",a[i]);

}

for (int i=0;i<15;i++){

a1[i]=0;}

printf ("\n");

printf ("\n");

min=a[0];

k=0;

for(i=0; i<15; i++){

min=a[i];

k=i;

for(j=1; j<15; j++){

if(a[j]>min){

min=a[j];

k=j;}}

g[i]=min;

a[k]=NULL;

for(int k1=0; k1<i; k1++){

printf("%i ",g[k1]);}

printf("\n");}

getch();}

Результат работы программы: