лабораторные работы / лаба №7
.docxБАЛАКОВСКИЙ ИНСТИТУТ ТЕХНИКИ, ТЕХНОЛОГИИ И УПРАВЛЕНИЯ
ФАКУЛЬТЕТ ИНЖЕНЕРНО – СТРОИТЕЛЬНЫЙ
КАФЕДРА «ИНФОРМАЦИОННЫЕ СИСТЕМЫ И ТЕХНОЛОГИИ»
Лабораторная работа №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();}
Результат работы программы: