- •Міністерство освіти і науки України Машинобудівний коледж Сумського державного університету Циклова комісія спеціальності 5.05010101
- •Щоденник-звіт з навчальної практики База практики________________________________________________________
- •Завдання на навчальну практику студента
- •1 Теоретичні відомості
- •2 Практичне завдання
- •2.1 Завдання № 1.
- •2.2 Завдання № 2. Програмування алгоритмів, що розгалужуються.
- •2.3 Завдання № 3. Програмування циклічних алгоритмів.
- •2.4 Завдання № 4. Програмування з використанням одновимірних масивів.
- •2.5 Завдання № 5. Покажчики. Програмування з використанням динамічних двовимірних масивів.
- •2.6 Завдання № 6. Програмування з використанням рядків.
- •2.7 Завдання № 7. Програмування з використанням Структур.
- •2.8 Завдання № 8. Програмування з використанням функцій.
- •2.9 Завдання № 9. Програмування з використанням рекурсії.
- •2.10 Завдання № 10. Програмування з використанням файлів.
- •2.11 Завдання № 11.
- •Висновок
- •Література
2.3 Завдання № 3. Програмування циклічних алгоритмів.
Таблиця 1
а
|
b
|
S(x)
|
n
|
Y(x)
|
0.1 |
1 |
80 |
Код програми:
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <math.h>
using namespace std;
int fact(double n)
{
double r = 1;
for (int i = 2; i <= n; i++)
r *= i;return r;}
int main()
{setlocale(0, "rus");
double a=0.1, b=1, h, x, y, s, p;
int n=80, i;
h = (b - a) / 10;x = a;
do{
p = s = 1;for (i = 1; i <= n; i++)
{ p *=pow(-1,n)*(pow(2*x,2*n)/fact(2*i));
s += p;}
y = 2*(pow(cos(x),2)-1);
cout << setw(15) << x << setw(15) << y << setw(15) << s << endl; x += h; } while (x <= b + h / 2);
cout << endl; system("pause"); return 0; }
Рис. 3 Результат третього завдання
2.4 Завдання № 4. Програмування з використанням одновимірних масивів.
Заданий масив з до чисел. Визначити кількість інверсій в масиві (тобто таких пар елементів, в яких більше число знаходиться зліва від меншого).
Код програми:
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
using namespace std;
int main()
{srand((unsigned)time(NULL)); // рандомное заполнение без повторений
setlocale(0, "rus");
int mas[99], i, s; int n = 10; s = 0;
for ( i = 0; i < n; i++)
{
mas[i] = rand() % 100 - 32; // рандомное заполнение массива
cout << mas[i] << " "; }
cout << endl; for (i = 0; i<n; i++)
{ if (mas[i]>mas[i + 1]){ s++; }}
cout << "Количество инверсий в массиве =" << s-1;
cout << endl; system("pause"); return 0; }
Рис. 4 Результат 4 завдання
2.5 Завдання № 5. Покажчики. Програмування з використанням динамічних двовимірних масивів.
У матриці розміром NXM переставити рядки так, щоб на головній діагоналі матриці були розташовані елементи, найбільші по абсолютній величині.
Код програми:
#include "stdafx.h"
#include <conio.h>
#include <locale>
#include "math.h"
#include "stdlib.h"
#include "iostream"
#include "time.h"
#include <iomanip>
using namespace std;
int main()
{srand((unsigned)time(NULL)); // заполнение без повторений
setlocale(0, "rus"); int i, j, n, m; int a[99][99];
cout << "Задайте розмер массива ," << endl << "Он должен быть квадратным" << endl;
cout << "Введите к-во строк " << endl; cin >> n;
cout << "Введите к-во столбцов " << endl; cin >> m;
if (n!=m){ cout << "Даная матрица не квадратная, перезапустите программу и введите розмеры заново!";
cout << endl; system("pause"); return 1; }
for (i = 0; i < n; i++){
for (j = 0; j < m; j++){
a[i][j] = rand() % 100 - 32; // рандомное заполнение масси }
for (i = 0; i < n; i++) {
for (j = 0; j < m; j++)
cout << setw(5) << a[i][j] << setw(5); cout << endl; }
int max = 0; int b[99];
cout << "Максимальные ел. по строкам -> ";
for (i = 0; i < n; i++)
{ for (j = 0; j < m; j++){
for (j = 1; j < m; ++j)if (a[i][j] > a[i][max])
max = j; b[i] = a[i][max]; cout << a[i][max] << " "; }}
cout << endl; cout << "Получаем массив -> " << endl;
for (i = 0; i < n; i++)
{ for (j = 0; j < m; j++) if (i == j){
a[i][j] = b[i];}}
for (i = 0; i < n; i++)
{for (j = 0; j < m;j++)
cout << setw(5) << a[i][j] << setw(5); cout << endl;}
cout << endl; system("pause"); return 0;}
Рис. 5 Результат 5 завдання