Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УП_4.docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
574.09 Кб
Скачать

Федеральное государственное образовательное учреждение среднего профессионального образования

«Калачевский техникум-интернат» Министерства здравоохранения и социального развития Российской Федерации

Практическая работа по дисциплине:

Разработка программных модулей программного обеспечения для компьютерных систем. Системное программирование.

Выполнил: студент группы T-34

Кравчук Ю.С.

Проверил: В.В. Ким

г.Калач-на-Дону

2012. год.

Оглавление Практическая работа № 1

1.1 Задача № 1. 11

1.1.1. Блок-схема программы: 12

Блок-схема функции max: 12

1.1.2. Код программы: 13

1.1.3. Пример работы программы: 14

1.2. Задача № 2. 14

1.2.1. Блок-схема программы: 15

1.2.2. Код программы: 16

1.2.3. Пример работы программы: 18

1.3. Задача № 3. 18

1.3.1. Блок-схема: 19

1.3.2. Код программы: 20

1.3.3. Пример работы программы: 22

1.4. Задача № 4. 22

1.4.1. Блок-схема: 23

1.4.2 Код программы: 24

1.4.3. Пример работы программы: 25

1.5. Задача № 5. 26

1.5.1. Блок-схема: 27

1.5.2. Код программы: 29

1.5.3. Пример работы программы: 32

2.1. Задача № 1. 32

2.1.1. Блок-схема 33

2.1.2. Код программы 34

#include "stdafx.h" 34

#include <conio.h> 34

#include <iostream> 34

int _tmain() 34

{ 34

const char* locale = setlocale(LC_ALL,""); 34

int a[10],i,min=0,max=0,elementmax=0,element=0,x,x2,l,x3,sum=0,sm; 34

float sr; 34

sm=0; 34

printf ("Введите 10 элементов массива: \n"); 34

printf ("Введите элемент 1 ->"); 34

scanf ("%i", &a[0]); 34

min=a[0]; 34

max=a[0]; 34

for (i=1; i<10; i++) 34

{ 34

printf ("Елемент %i ->",i+1); 34

scanf ("%i", &a[i]); 34

if (a[i]<min)//ищем минимум 34

{ 34

min=a[i]; 34

element=i+1; 34

} 34

if (a[i]>max)//ищем максимум 34

{ 34

max=a[i]; 35

elementmax=i+1; 35

} 35

} 35

printf("Введите образец для поиска: ");scanf("%i",&l);//ищем образец для поиска 35

for (i=0;i<10;i++) 35

{ 35

if(l==a[i]) 35

sum=sum+1; 35

} 35

if (element==0) 35

{ 35

x=element+1; 35

printf("Минимум = %i - элемент номер %i",min,x); 35

} 35

else 35

printf("Минимум = %i - элемент номер %i",min,element); 35

if (elementmax==0) 35

{ 35

x2=elementmax+1; 35

printf("\nМаксимум = %i - элемент номер %i",max,x2); 35

} 35

else 35

printf("\nМаксимум = %i - элемент номер %i",max,elementmax); 35

///////// ищем между минимумм и максимум 35

if (element==0) 35

{ 36

if (elementmax==0) 36

{ 36

x=element+1; 36

x2=elementmax+1; 36

x3=x2-x; 36

printf("\n1Количество элементов между максимум и минимум %i",x3); 36

} 36

else 36

{ 36

x=element+1; 36

x3=(elementmax-x)-1; 36

printf("\n2Количество элементов между максимум и минимум %i",x3); 36

for (i=element+1; i<elementmax-1;i++) 36

{ 36

sm=sm+a[i]; 36

} 36

printf("\nСумма %i", sm); 36

sr=(float)sm/x3; 36

printf("\nСреднее значение: %f", sr); 36

} 36

} 36

else 36

{ 36

if (elementmax==0) 36

{ 36

x2=elementmax+2; 36

x3=element-x2; 37

printf("\n3Количество элементов между максимум и минимум %i",x3); 37

for (i=elementmax+1; i<element-1;i++) 37

{ 37

sm=sm+a[i]; 37

} 37

printf("\nСумма %i", sm); 37

sr=sm/x3; 37

printf("\nСреднее значение: %f", sr); 37

} 37

else 37

{ 37

if (elementmax>element) 37

{ 37

x3=(elementmax-element)-1; 37

printf("\n4Количество элементов между максимум и минимум %i",x3); 37

for (i=element; i<elementmax-1;i++) 37

{ 37

sm=sm+a[i]; 37

} 37

printf("\nСумма %i", sm); 37

sr=(float)sm/x3; 37

printf("\nСреднее значение: %f", sr); 37

} 37

else 37

{ 37

x3=(element-elementmax)-1; 37

printf("\n5Количество элементов между максимум и минимум %i",x3); 37

for (i=elementmax; i<element-1;i++) 38

{ 38

sm=sm+a[i]; 38

} 38

printf("\nСумма %i", sm); 38

sr=sm/x3; 38

printf("\nСреднее значение: %f", sr); 38

} 38

} 38

} 38

///////// выводим сколько встречается число 38

if (sum==0) 38

printf("\nСовпадений нет!"); 38

else 38

printf("\nОбразец встречается %i раз(а)",sum); 38

_getch(); 38

} 38

2.1.3. Пример работы программы: 38

2.2. Задача № 2. 39

2.2.1. Блок схема 39

2.2.2. Код программы 41

#include "stdafx.h" 41

#include <conio.h> 41

#include <iostream> 41

#include <math.h> 41

int _tmain() 41

{int i,el1,el2,sum=0,k=0; 41

int a[11]; 41

float pr=1; 41

const char* locale = setlocale(LC_ALL,""); 41

printf("Вычислить произведение чётных элементов массива\n и вычислить сумму между первым и последниним элементом массива\n"); 41

for (i=0;i<=9;i++) 41

{ 41

printf("Введите элемент %i \n",i+1); 41

scanf("%i",&a[i]); 41

if (k>=1 && a[i]==0) 41

{ 41

el2=i; 41

k++; 41

} 42

if (k==0 && a[i]==0) 42

{ 42

el1=i; 42

k++; 42

} 42

} 42

if (k>=2) 42

{ 42

for (i=0;i<=9;i++) 42

{ 42

if ((i+1)%2==0) 42

pr=pr*float(a[i]);//Произведение четырёх элементов массива 42

} 42

if (el1<el2) 42

for (i=el1+1;i<=el2-1;i++) 42

{ 42

sum=sum+a[i]; 42

} 42

else 42

for (i=el2+1;i<=el1-1;i++) 42

{ 43

sum=sum+a[i]; 43

} 43

printf("Произведение четырёх элементов массива %f \n",pr); 43

printf("номер первого нулевого элемента %i \n",el1+1); 43

printf("номер последнего нулевого элемента = %i \n",el2+1); 43

printf("сумма элементов между первым и последним нулевым элементом = %i \n",sum); 43

} else 43

{ 43

for (i=0;i<=9;i++) 43

{ 43

if ((i+1)%2==0) 43

pr=pr*float(a[i]); 43

} 43

printf("Произведение четырёх элементов массива %f \n",pr); 43

printf("Введён только 1 нулевой элемент либо их нет!"); 43

} 43

_getch(); 43

}2.2.3. Пример работы программы: 43

2.3. Задача № 3. 44

2.3.1. Блок схема: 45

2.3.2. Код программы 46

#include "stdafx.h" 46

#include <conio.h> 46

#include <iostream> 46

#include <math.h> 46

Int _tmain() 46

{ 46

int i,sum=0,k=0,max=0,smm=0,mod=0,p=0,j=0; 46

int a[10]; 46

float pr=1; 46

const char* locale = setlocale(LC_ALL,""); 46

for (i=0;i<10;i++) 46

{ 46

printf("ВВедите элемент %i ",i+1); 46

scanf("%i",&a[i]); 46

} 46

for (i=0;i<10;i++) 46

{ 46

if (a[i]>max) 46

max=a[i]; 47

} 47

for (i=0;i<10;i++) 47

{ 47

mod=abs(a[i]); 47

if (mod>max) 47

max=mod; 47

} 47

for (i=0;i<10;i++) 47

if (a[i]<0) 47

k=i+1; 47

for (i=9;i>=0;i--) 47

if (a[i]<0) 47

p=i+1; 47

for (i=p;i<k-1;i++) 47

sum=sum+a[i]; 47

for (i=p-1;i<k;i++) 48

smm=smm+a[i]; 48

for (i=0;i<10;i++) 48

if (a[i]<0) 48

j=j+1; 48

if (j>=2) 48

{ 48

printf("максимальное значение по модулю %i \n",max); 48

printf("Сумма элементов между первывм и последним отрицательными числами: \n"); 48

printf("1) Без учета первого и последнего отрецательных чисел: %i \n", sum); 48

printf("2) C учетом первого и последнего отрецательных чисел: %i \n", smm); 48

for (i=0;i<10;i++) 48

if (a[i]>0) 48

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

} 48

else 48

{ 49

printf("максимальное значение по модулю %i \n",max); 49

printf("Отрицательных элементов нет либо всего 1!\n"); 49

printf("Массив без учёта отрицательных и нулевых значений:"); 49

for (i=0;i<10;i++) 49

if (a[i]>0) 49

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

} 49

_getch(); 49

} 49

2.3.3. Пример работы программы: 49

3.1. Задача № 1. 50

3.1.1. Блок-схема 50

3.1.2. Код программы 50

3.1.3. Пример работы программы: 51

3.2. Задача № 2. 52

3.2.1. Блок-схема 52

3.2.2. Код программы 52

3.2.3. Пример работы программы: 54

3.3. Задача 3. 55

3.3.1. Блок схема 56

3.3.2. Код программы 56

3.3.3. Пример работы программы: 58

1.1 Задача № 1. 3

1.1.1. Блок-схема программы: 3

Блок-схема функции m: 4

1.1.2. Код программы: 4

1.1.3. Пример работы программы: 5

1.2. Задача № 2. 5

1.2.1. Блок-схема программы: 5

1.2.2. Код программы: 6

1.2.3. Пример работы программы: 7

1.3. Задача № 3. 7

1.3.1. Блок-схема: 9

1.3.2. Код программы: 10

1.3.3. Пример работы программы: 11

1.4. Задача № 4. 11

1.4.1. Блок-схема: 12

1.4.2 Код программы: 12

1.4.3. Пример работы программы: 13

1.5. Задача № 5. 13

1.5.1. Блок-схема: 14

1.5.2. Код программы: 14

1.5.3. Пример работы программы: 16

Практическая работа №2

2.1. Задача № 1. 16

2.1.1. Блок-схема 18

2.1.2. Код программы 19

2.1.3. Пример работы программы: 21

2.2. Задача № 2. 21

2.2.1. Блок схема 22

2.2.2. Код программы 23

2.2.3. Пример работы программы: 24

2.3. Задача № 3. 25

2.3.1. Блок схема: 26

2.3.2. Код программы 27

2.3.3. Пример работы программы: 29

Практическая работа № 3

3.1. Задача № 1. 29

3.1.1. Блок-схема 30

3.1.2. Код программы 30

3.1.3. Пример работы программы: 31

3.2. Задача № 2. 32

3.2.1. Блок-схема 33

3.2.2. Код программы 34

3.2.3. Пример работы программы: 35

3.3. Задача 3. 36

3.3.1. Блок схема 38

3.3.2. Код программы 39

3.3.3. Пример работы программы: 41

1.Практическая работа №1

1.1 Задача № 1.

Написать программу, которая сравнивает три целых числа и выводит максимальное. Сравнение чисел осуществляется в функции. Аргументами функции являются три числа.

Решение:

      1. Блок-схема программы:

Блок-схема функции max:

      1. Код программы:

#include "stdafx.h"

#include <conio.h>

#include <iostream>

int max (int a, int b, int c) функция max с переменами a,b,c

{

if (a>b) условие если a>b

{ - то

if (a>c) – ещё одно условие если a>c

return(a); - записываем a

else - иначе

return(c); - записываем c

} - закрываем то

Else - иначе с первого условия

{

if (b>c) если b>c

return(b); записываем b

else - иначе

return(c); - записываем c

} - закрытие 1-го условия

} - закрытие функции