2.2 Виконавець алгоритму
Кожний алгоритм створюється з розрахунку на конкретного виконавця, тому можна сказати, що алгоритм – це точні розпорядження (указівки, команди, операції, інструкції) виконавцеві здійснити послідовність дій, спрямованих на розв’язання поставленої задачі.
Під виконавцем будемо розуміти деяку абстракцію, яка характеризується :
набором дій (операцій), які виконавець здатний виконати;
набором об’єктів (даних), над якими виконуються дії;
набором інструкцій (команд), які виконавець розуміє і реалізує;
мовою спілкування з виконавцем (алгоритмічною мовою).
Алгоритм складається із команд – окремих вказівок виконавцеві виконати деякі конкретні дії. Команди алгоритму виконуються одна за одною, і на кожному кроці відомо, яка команда повинна виконуватися. Почергове виконання команд за кінцеве число кроків приводить до розв’язання задачі. Для того щоб виконавець міг розв’язати задачу за заданим алгоритмом, він повинен уміти виконувати кожну з дій, що вказується командами алгоритму.
Виконавцями алгоритмів можуть бути людина, автомати, тобто ті, хто розуміє та може виконати вказівки алгоритму.
Система команд виконавця – сукупність команд, які можуть бути виконані виконавцем; кожна команда алгоритму входить до системи команд виконавця.
Кожну дію (операцію) виконавець здійснює згідно з інструкцією, тобто він здатен виконувати дії алгоритму. Можна вважати, що алгоритм – це програма для абстрактного виконавця.
Таким чином можна сформулювати визначення алгоритму.
Алгоритм – це точний й повний опис послідовності виконання кінцевого числа дій, необхідних для вирішення будь-якого завдання заданого типу.
Алгоритм б розв’язання обчислювальних та інших завдань, що точно описує, як і у якій послідовності одержати результат, однозначно обумовлений вихідними даними.
Алгоритм – це скінченна сукупність інструкцій (команд) виконавцю про зміст та послідовність дій над певними об’єктами (даними), яка за скінченну кількість виконань інструкцій приводить до досягнення поставленої мети.
Розглянемо приклади алгоритмів. Перший алгоритм вирішує завдання передачі повідомлення телефоном. Цим алгоритмом Ви користуєтеся у повсякденному житті.
Объяснение:
#include <iostream>
using std::cout;
using std::endl;
#include <cstdlib>
using std::rand;
using std::srand;
#include <ctime>
using std::time;
int main()
{
int a[10];
srand(time(0));
for(int i = 0; i < 10; i++)
{
a[i] = rand() % 201 - 100;
cout << a[i] << ' ';
}
cout << endl;
int temp;
for(int i = 0; i < 5; i++)
{
temp = a[i];
a[i] = a[i + 5];
a[i + 5] = temp;
}
for(int i = 0; i < 10; i++)
{
cout << a[i] << ' ';
}
cout << endl;
return 0;
}
2) Проблемно-ориентированные - служат для решения более узкого круга задач, связанных, как правило, с управлением технологическими объектами, регистрацией, накоплением и обработкой небольших объемов данных, выполнением расчетов по несложным правилам. Они обладают ограниченным набором аппаратных и программных средств.
3) Специализированные - применяются для решения очень узкого круга задач. Это позволяет специализировать их структуру, снизить стоимость и сложность при сохранении высокой производительности и надежности. К этому классу ЭВМ относятся компьютеры, управляющие работой устройств ввода-вывода и внешней памятью в современных компьютерах. Такие устройства называются адаптерами, или контроллерами.
2.2 По размерам и функциональным возможностям
Различают четыре вида компьютеров: суперЭВМ, большие, малые и микроЭВМ.
СуперЭВМ являются мощными многопроцессорными компьютерами с огромным быстродействием. Многопроцессорность позволяет распараллеливать решение задач и увеличивает объемы памяти, что значительно убыстряет процесс решения. Они часто используются для решения экспериментальных задач, например, для проведения шахматных турниров с человеком.Большие характеризуются многопользовательским режимом (до 1000 пользователей одновременно могут решать свои задачи). Основное направление – решение научно-технических задач, работа с большими объемами данных, управление компьютерными сетями и их ресурсами.
Малые ЭВМ используются как управляющие компьютеры для контроля над технологическими процессами. Применяются также для вычислений в многопользовательских системах, в системах автоматизации проектирования, в системах моделирования несложных объектов, в системах искусственного интеллекта.
По конструктивным особенностям
ПК делятся на стационарные (настольные – тип DeskTop) и переносные. В свою очередь переносные ПК встречаются различных типов, например, ноутбуки, органайзеры, карманные и т.д.
Стационарные ПК, предназначенны в первую очередь для работы в офисе или в домашних условиях. Термин обычно используется для того, чтобы обозначить вид компьютера и отличить его от компьютеров других типов, например, портативного компьютера, карманного компьютера, встроенного компьютера или сервера.