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

Модуль 1 / M1HT1

.doc
Скачиваний:
103
Добавлен:
22.04.2016
Размер:
498.69 Кб
Скачать

МІНІСТЕРСТВО ОСВІТИ, НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ

НАЦІОНАЛЬНИЙ АВІАЦІЙНИЙ УНІВЕРСИТЕТ

КАФЕДРА ПРИКЛАДНОЇ ІНФОРМАТИКИ

Домашня робота №1

з дисципліни:”Алгоритмізація та програмування”

Виконав: студент 113 групи ІКІТ

Односумов М.С.

Київ 2015

Задача №1. Цикли. Табулювання функції і пошук даних.

Протабулювати функцію на проміжку [-i;i] з кроком h=0.1i, де i –номер варіанта. Результати вивести на екран у вигляді таблиці пар чисел x ,y. Виконати завдання пошуку даних. Якщо функція в якійсь точці із зазначеного інтервалу не існує вивести про це повідомлення та вказати значення цього аргументу. Якщо шуканих даних немає, вивести про це повідомлення.

16. Обчислити кількість та добуток усіх від’ємних значень функції у.

Блок-схема:

Програма:

#include "stdafx.h"

#include<iostream>

#include<math.h>

#include<cstdlib>

#include<cmath>

#include<conio.h>

using namespace std;

int main()

{

setlocale(LC_ALL, "RUS");

double y = 0, h = 0.1, x = 0, a = 16, s = 0, f = 1;

cout << "\t=========================" << endl;

cout << "\t| x \t|" << " y\t|" << endl;

for (int i = -16;i <= 16; i = i + h*a)

{

y = ((sqrt(2 * pow(x, 2) + 1.5)) / (sin(3 * x)*(2 * x - 7)) + pow(2.7, -3 * x));

x = i;

cout << "\t|" << x << "\t|" << y << "\t|" << endl;

if (x < 0)

{

f *= x;

s++;

}

};

cout << "\t=========================" << endl;

cout << "\tКоличество отрицательных y =" << s << endl;

cout << "\tПроизведение всех отрицательных у =" << f << endl; //Вивід добутку усіх значень у, які задовільняють умову (6<у<10)

system("pause");

}

Результат:

Задача №2. Одновимірні масиви та складний пошук.

Утворити і вивести масив у з елементами , де і – номер варіанта, k = [1,12]. Виконати завдання свого варіанту. У разі відсутності шуканих даних, вивести повідомлення про це.

16. Максимальний елемент поміняти місцями з четвертим, що задовольняє умову

Блок-схема:

Програма:

#include<iostream>

#include<cmath>

#include<stdlib.h>

using namespace std;

int main()

{

int x, z, maxx;

int k = 0;

double a[20];

double c,max;

bool q;

x = 1;

q = true;

max = (sqrt(2 * pow(x, 2) + 1.5)) / (sin(3 * x)*(2 * x - 7)) + pow(2.7, -3 * x);

for (x = 1; x <= 12; x++) {

a[x] = (sqrt(2 * pow(x, 2) + 1.5)) / (sin(3 * x)*(2 * x - 7)) + pow(2.7, -3 * x);

if (a[x] > 1) { k++; }

if ((k == 4) && (q == true)) {z = x; q = false; }

if (max < a[x]) {

max = a[x]; maxx = x; }

cout << a[x] << endl;

}

cout << "Changing..." << endl;

c = a[z];

a[z] = a[maxx];

a[maxx] = c;

for (x = 1; x <= 12; x++) { cout << a[x] << endl; }

system("PAUSE");

return 0;

}

Результат:

Висновок: програми працюють коректно, отже я навчився використовавувати як масиви, так і цикли.

Соседние файлы в папке Модуль 1