DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

Програмування циклічних алгоритмів

Інформація про навчальний заклад

ВУЗ:
Національний технічний університет України Київський політехнічний інститут
Інститут:
Не вказано
Факультет:
СІ
Кафедра:
Не вказано

Інформація про роботу

Рік:
2023
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Програмування

Частина тексту файла (без зображень, графіків і формул):

Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського» Теплоенергетичний факультет Кафедра автоматизації проектування енергетичних процесів і систем ЗВІТ з лабораторної роботи № 3 з дисципліни «Програмування алгоритмічних структур» Тема «Програмування циклічних алгоритмів» Варіант № 14 Завдання на лабораторну роботу. 1.Розробити блок-схеми алгоритмів і написати програми мовою Java із застосуванням операторів циклів for, while, do while для розв’язання завдань, поданих в табл.1–3 відповідно до індивідуального варіанта. Варіант обрати за списком групи. 2.Розробити програмні проекти в середовищі Intellij IDEA для реалізації написаних програм. Перевірити результати обчислень альтернативними розрахунками (наприклад, Excel, калькулятор, тощо). 3. Зробити Звіт з лабораторної роботи та вчасно надіслати викладачу на перевірку. Завдання 1: Завдання 2: Завдання 3: Короткий опис рішення завдання Завдання 1: У класі task1 за допомогою циклу for виконала арифметичні дії відповідно до варіанту. Здійснила форматований вивід даних (x–один або два знаки після коми, y(x), z(x)–4 знаки після коми). Результати вивела в таблицю з трьома стовбчиками для х, y(x), z(x). У класі main викликала метод task1 із заданими за варіантом значеннями границі х та кроку приросту h. Завдання 2: Поза класом здійснила ініціалізацію масиву t1. У класі main спочатку вивела задану послідовність, а потім вивела результат за допомогою форматованого виводу, використовуючи метод task2 для послідовності t1. У класі task 2 ініціалізувала змінні min та max, які спочатку присвоїла до першого елемента масива t1. Далі в циклі for знайшла максимальне й мінімальне значення й повернула їх різницю. Завдання 3: У класі main за допомогою метода scanner здійснюю ввід з клавіатури заданих значень x (0,6 та 2,8). Далі за допомогою форматованого виводу виводжу результат, використовуючи метод task31 для х, а потім так само з методом task32 для х. У класі task31 знаходжу факторіал за допомогою циклу for і здійснюю арифметичні дії з завдання за варіантом. Повертаю отримане значення. У класі task32 роблю все те саме, але в циклах while, після чого повертаю отримане значення. Блок-схема алгоритму для завдання 3:   Програма проекту (копія коду на білому фоні): package com.company; import static java.lang.Math.*; import java.util.Scanner; public class Main { public static void main(String[] args) { System.out.println("--------------Task1--------------"); task1(-4, 10, 0.4); System.out.println("\n--------------Task2--------------"); //введення масиву присвоєнням int[] t1 = {1, 5, 3, 4, 5, 9, 7, 8, 9, 13}; System.out.printf("Послідовність:"); //вивід масиву t1 для завдання 2 for (int i = 0; i < t1.length; i++) System.out.printf(" %d", t1[i]); //вивід результату для завдання 2 System.out.printf("\nРезультат: %d\n", task2(t1)); System.out.println("\n--------------Task3--------------"); double x; //ввід даних з клавіатури Scanner scan = new Scanner(System.in); System.out.printf("Введіть x: "); x = scan.nextDouble(); System.out.printf("Результат: %.4f\n\n" , task31(x)); System.out.printf("Введіть x: "); x = scan.nextDouble(); System.out.printf("Результат: %.4f\n" , task32(x)); } static void task1(int minX, double maxX, double h) { System.out.printf("_________________________________\n"); System.out.printf("|\tx\t|\ty(x)\t|\tz(x)\t|\n"); System.out.printf("---------------------------------\n"); //обрахунки до 1 завдання for (double x = minX; x < maxX + h; x += h) System.out.printf("|\t%.1f\t|\t%.4f\t|\t%.4f\t|\n", x, Math.pow(sin(x), 2) + cos(x), sin(x) / (log10(pow(x, 2) + 2))); System.out.printf("---------------------------------\n"); } static int task2(int[] t1) { //ініціалізація int min, max; min = max = t1[0]; // знаходження мінімального й максимального значень елементів в масиві for (int i = 1; i < 10; i++) { if (t1[i] < min) min = t1[i]; if (t1[i] > max) max = t1[i]; } // повертаю різницю мінімального й максимального значень елементів в масиві return max - min; } //метод з циклом while для завдання 3 static double task31(double x){ //ініціалізація змінних double count = 0; double factorial; int k = 1; int i; while (k < 7){ //знаходимо факторіал k factorial = 1; i = 1; while (i <= k){ factorial *= i; i++; } count += factorial/pow((1+x),k); k++; } return count; } //метод з циклом for для завдання 3 static double task32(double x){ //ініціалізація змінних double count = 0; double factorial; for (int k = 1 ;k < 7; k++) { //знаходимо факторіал k factorial = 1; for (int i = 1; i <= k; i++) factorial *= i; count += factorial/pow((1+x),k); } return count; } } Результати обчислень: Завдання 1: Завдання 2: Завдання 3: Висновки: Під час виконання лабораторної роботи №3 вдалось набути практичних навичок використання операторів циклів for, while при створюванні програмних проектів циклічної структури. Було написано програми мовою Java із застосуванням операторів циклів й розв’язано завдання , які подані в табл.1–3 відповідно до індивідуального варіанту. Проекти були розроблені в середовищі Intellij IDEA для реалізації написаних програм. Результати обчислень перевірено за допомогою калькулятора. Звіт оформлено згідно з вимогами й вчасно надіслано викладачу.
Антиботан аватар за замовчуванням

04.05.2023 23:17

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!