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

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

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

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

Рік:
2013
Тип роботи:
Розрахункова робота
Предмет:
Алгоритми і структури даних

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ Національний університет «Львівська політехніка» ІЕПТ ім. В’ячеслава Чорновола Кафедра загальної екології та екоінформаційних систем РОЗРАХУНКОВА РОБОТА з предмету: «Алгоритми і структури даних» Варіант 5 Львів – 2012 Тема: Обробка даних рядкового типу Мета роботи: ознайомлення з особливостями рядкового типу даних, алгоритми їх обробки, розвиток навичок програмної реалізації обробки рядків. Завдання: Дано натуральне число n, яке вводиться з клавіатури. Треба вивести на екран символьне представлення цього числа у вигляді послідовності цифр і пропусків, які відокремлюють групи по три цифри починаючи справа. Наприклад, n=12354376, на екрані має бути виведено 12 354 376. Необхідно розробити алгоритм і скласти програму. Алгоритм у вигляді блок-схеми Код програми # include <iostream.h> #include <string.h> # include <conio.h> int main() {char a[300]; int i=0; cout<<"Vvedit naturalne chuslo a="; cin.getline(a,sizeof(a)); cout<<"\n"<<"Rozdilene chuslo v grupu po 3:\n\n"; do {cout<<a[i]<<a[i+1]<<a[i+2]<<"\t"; i=i+3; } while(a[i+4]!='\0'); getch(); return 0;} Результат роботи програми / Тема: Фундаментальні структури даних Мета роботи: ознайомлення з фундаментальними структурами даних, алгоритмами їх обробки, розвиток навичок програмування. Завдання: Знайти кількість «щасливих» квитків з номерами від 000000 до 999999 включно. «Щасливим» називають квиток, якщо сума трьох лівих цифр дорівнює сумі трьох правих цифр (наприклад 248707). Розробити алгоритм і скласти програму для рішення задачі. Алгоритм у вигляді блок-схеми Код програми # include <iostream.h> # include <math.h> # include <conio.h> int main() {int i,j,k,l,m; int count=0; for(int i=0;i<10;i++) for(int j=0;j<10;j++) for(int k=0;k<10;k++) for(int l=0;l<10;l++) for(int m=0;m<10;m++) for(int n=0;n<10;n++) if(i+j+k==n+l+m) { cout<<i<<j<<k<<l<<m<<n<<" suma="<<(i+j+k)<<endl; count++; } cout<<"count="<<count<<"\n"; getch(); return 0;} Результат роботи програми / Тема: Динамічні структури даних. Організація даних у списки. Мета роботи: ознайомлення з динамічними структурами даних, вивчення методів їх створення у програмах і алгоритмів їх обробки, формування навичок роботи зі списковими структурами даних. Завдання: Написати програму для додавання нового елемента в список після елемента з вказаним порядковим номером (тобто вставка не в кінець списку). Код програми #include <stdio.h> #include <alloc.h> #include <conio.h> struct element { int info; struct element *next,*prev; }*p1,*po,*el1,*el2,*p,*t; int znach,n,m=1,k=1; void main() { clrscr(); puts("VVEDIT ZNACHENNYA ELEMENTIV"); puts("---------------------------\n"); scanf("%d",&znach); p1=(struct element *)malloc(sizeof(struct element)); p1->info=znach; p1->next=NULL; p1->prev=NULL; el1=(struct element *)malloc(sizeof(struct element)); el1=p1; scanf("%d",&znach); while(znach!=0) {el2=(struct element *)malloc(sizeof(struct element)); el2->info=znach; el2->prev=el1; el2->next=NULL; el1->next=el2; el1=el2; po=el2; scanf("%d",&znach);m++;} el1=p1; puts("\n"); puts("ELEMENTY SPYSKU"); puts("---------------------------\n"); do {printf("%d\n",el1->info); el1=el1->next;} while(el1!=NULL); puts("\n"); puts("vvedit element"); scanf("%d",&znach); puts("na yaku pozyciyu vstavyty"); scanf("%d",&n); puts("\n"); el1=p1; while(n>m) {puts("V spysku nema stilky elementiv, vvedit inshu pozyciyu"); scanf("%d",&n);} if(n==1) {el2=(struct element *)malloc(sizeof(struct element)); el2->info=znach; el2->prev=NULL; el2->next=el1; p1=el2;} else if(n==m) {el2=(struct element *)malloc(sizeof(struct element)); el2->info=znach; el2->prev=po; el2->next=NULL; po->next=el2; } else {while(k!=m) {if(k==n-1) t=el1; if(k==n) p=el1; el1=el1->next; k++;} el2=(struct element *)malloc(sizeof(struct element)); el2->info=znach; el2->prev=t; t->next=el2; el2->next=p; p->prev=el2;} el1=p1; puts("NOVYI SPYSOK"); puts("---------------------------\n"); do {printf("%d\n",el1->info); el1=el1->next;} while(el1!=NULL); getch();} Результат роботи програми Теми: Сортування масивів і аналіз алгоритмів Мета роботи: Вивчення різних методів зовнішнього і внутрішнього сортування, дослідження і аналіз алгоритмів на прикладі алгоритмів сортування масивів. Завдання: Скласти програму для сортування масиву методом простого вибору і методом бульбашки. 1.Сортування масиву методом простого вибору Блок-схема Код програми # include <iostream.h> # include <conio.h> const int n=8; void main(){ int x,j; int a[n]; cout<<"Sortuvanna masuvu prostumu vstavkamu\n\n"; cout<<"Vvedit elementu masuvu:\n\n"; for(int i=1; i<=n; i++) cin>>a[i]; for(int i=2; i<=n;i++) {x=a[i]; a[0]=x; j=i-1; while(x<a[j]) {a[j+1]=a[j]; j=j-1; } a[j+1]=x; } cout<<"\nPosortovanuy masuv:\n\n"; for(int i=1; i<=n; i++) cout<<a[i]<<" "; getch(); } Результат роботи програми / 2. Cортування масиву методом бульбашки Блок-схема Код програми #include <iostream.h> #include <stdlib.h> #include <conio.h> const int SIZE = 25; int array[SIZE]; // zapovnenna masuvu vupadkovumu chuslamu void GenerationArray() { // pruvazka po chasu dla generatsii chusel bez povtoren srand(time(0)); for (int i=0; i<SIZE; i++) { // zapovnenna masuvu chuslamu <100 array[i] = rand()%100; } } // Vvuvedenna masuvu na ekran void ShowArray() { for (int i=0; i<SIZE; i++) { cout << array[i] << " "; } cout << endl; } int main() { cout<<"Masuv zgenerovanuh vupadkovuh chusel:\n\n"; int temp; GenerationArray(); ShowArray(); // sortuvanna bulbashkou for (int x=SIZE; x>0; x--) { for (int i=0; i<SIZE-1; i++) { // aksho chuslo bilshe za poperedne if (array[i] > array[i+1]) { // minnaemo ih mistsamu temp = array[i]; array[i] = array[i+1]; array[i+1] = temp; } } } cout<<"\nPosortovanuy masuv\n\n"; ShowArray(); getch(); return 0; } Результат роботи програми / Тема: Рекурсивні структури даних. Графи Мета роботи: ознайомлення з різними рекурсивними структурами даних (дерева, графи), вивчення і дослідження рекурсивних структур на прикладі графів. Завдання: Написати програму, яка шукає у графі вершину, з котрої виходить найбільша кількість ребер. Блок схема Код програми // Graf.cpp: // #include "stdafx.h" #include<iostream> #include<conio.h> #include<time.h> #include<windows.h> using namespace std; int _tmain(int argc, _TCHAR* argv[]) { int matr[8][8] = { {0,1,1,1,0,0,0,0}, {1,0,1,0,0,0,0,0}, {1,1,0,0,0,0,1,0}, {1,0,0,0,1,0,0,0}, {0,0,0,1,0,1,0,0}, {0,0,0,0,1,0,1,0}, {1,0,1,0,1,1,0,1}, {0,0,0,0,0,0,1,0} }; cout<<"Matrix inside\n"; int s=0; int i = 0, j = 0; while(i < 8) { for(j = 0; j < 8; j++) { cout<<matr[i][j]<<" "; if(matr[i][j] == 1) s = s + matr[i][j]; } cout<<", stepin' vershunu "<<i+1<<" = "<<s<<"\n"; s = 0; i++; } int t=1; int max=matr[0][0]; for(i = 0; i < 8; i++) {for(j = 0; j < 8; j++) { if(matr[i][j]>max) max=matr[i][j]; t=i; } } cout<<"\nVershuna z yakoi vuhodut naybilsha kilkist reber # "<<t; _getch(); return 0; } Результат роботи програми /
Антиботан аватар за замовчуванням

11.11.2013 00:00

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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