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

МОЖЛИВОСТІ ВИКОРИСТАННЯ ПАРАЛЕЛЬНИХ АЛГОРИТМІВ

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

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

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

Рік:
2015
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Паралельні та розподілені обчислення
Група:
КІ

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

Міністерство освіти і науки України Національний університет «Львівська політехніка» Кафедра ЕОМ Звіт про виконання лабораторної роботи №3 з курсу: «Паралельні та розподілені обчислення», на тему: «МОЖЛИВОСТІ ВИКОРИСТАННЯ ПАРАЛЕЛЬНИХ АЛГОРИТМІВ» Львів 2005 рік Мета: Дослідити можливості розв’язання різноманітних задач за допомогою паралельних алгоритмів. Навчитися виділяти незалежні гілки обчислень та виконувати їх паралельно. Завдання В полі 8*8 кліток зображено кілька прямокутників, кожен з яких складається з кліток, різні прямокутники не перетинаються і не доторкаються один до одного. Задана квадратна матриця порядку 8, в якій елемент рівний нулю, якщо відповідна клітина належить прямокутнику і відмінний від нуля, в іншому випадку. Визначити кількість прямокутників. Початковими даними вважати матрицю елементів, яка повинна вводитися під час виконання програми. Графічно відобразити вхідні дані. Текст програмної реалізації #include <iostream.h> #include <conio.h> #include <stdio.h> #include <fstream.h> #include <time.h> #include <iomanip.h> #include <stdlib.h> FILE * fp; char i,j,matrix[8][8],next[2]; void printmatrix() { int i,j; for (i=0;i<8;i++) { for (j=0;j<8;j++) { printf("%c",matrix[i][j]); } printf("\n"); } } void main() { clrscr(); fp=fopen("matrix.txt","r"); //char i,j,matrix[8][8],next[2]; for (i=0;i<8;i++) { for (j=0;j<8;j++) { fscanf(fp,"%c",&matrix[i][j]); } fscanf(fp,"%c",next[0]); } printf("Start matrix:\n"); printmatrix(); printf("\n"); int GlobalX,GlobalY,counter=0,cx,cy; while(1) { for (GlobalY=0;GlobalY<8;GlobalY++) { for (GlobalX=0;GlobalX<8;GlobalX++) { if(matrix[GlobalY][GlobalX]==0x31)break; } if(matrix[GlobalY][GlobalX]==0x31)break; } if(matrix[GlobalY][GlobalX]!=0x31)exit(0); while((GlobalX!=0)&&(matrix[GlobalY][GlobalX-1]!=0x30))GlobalX--; while((GlobalY!=0)&&(matrix[GlobalY-1][GlobalX]!=0x30))GlobalY--; j=GlobalX; i=GlobalY; cx=0; cy=0; while(matrix[i][j]==0x31) { cx++; j++; } j=GlobalX; while(matrix[i][j]==0x31) { cy++; i++; } for(i=0;i<cy;i++) { for(j=0;j<cx;j++) { matrix[GlobalY+i][GlobalX+j]=0x30; } } counter++; printmatrix(); printf("\n\ncount=%d\n\n",counter); getch(); } } Приклад виконання програми   Висновок. На даній лабараторній роботі я навчився розв’язувати задачі за допомогою паралельних алгоритмів. Програма може пряцювати з кожним прямокутником як незалежним об’єктом і рахувати їх немовби паралельно.
Антиботан аватар за замовчуванням

2015

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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