Главная страница
Случайная страница
Разделы сайта
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
💸 Как сделать бизнес проще, а карман толще?
Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое раписание, но и напоминать клиентам о визитах тоже.
Проблема в том, что средняя цена по рынку за такой сервис — 800 руб/мес или почти 15 000 руб за год. И это минимальный функционал.
Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.
⚡️ Для новых пользователей первый месяц бесплатно. А далее 290 руб/мес, это в 3 раза дешевле аналогов.
За эту цену доступен весь функционал: напоминание о визитах, чаевые, предоплаты, общение с клиентами, переносы записей и так далее.
✅ Уйма гибких настроек, которые помогут вам зарабатывать больше и забыть про чувство «что-то мне нужно было сделать».
Сомневаетесь? нажмите на текст, запустите чат-бота и убедитесь во всем сами!
Алгоритмы матричной алгебры
Пример 1. Даны две матрицы a и b. Вычислить сумму c=a+b, где c – новая матрица.
Ход выполнения работы
1. Для решения данной задачи используется формула для формирования элементов массива. Каждой матрице в алгоритме соответствует двухмерный массив.
2. Написать программу, соответствующую алгоритму:
Алгоритм
| Программа
| объявление вещ: а[6][4], b[6][4], c[6][4], цел: i, j
// ввод массива a построчно
для i=0 до 6-1 шаг 1
// в цикле изменяется номер i строки
// массива
для j=0 до 4-1 шаг 1
// в цикле изменяется номер j
// столбца массива
// затем элемент вводится
ввод а[i][j]
все_для j
все_для i
// ввод массива b построчно
для i=0 до 6-1 шаг 1
// в цикле изменяется номер i строки
// массива
для j=0 до 4-1 шаг 1
// в цикле изменяется номер j
// столбца массива
// затем элемент вводится
ввод b[i][j]
все_для j
все_для i
// вычисление суммы
для i=0 до 6-1 шаг 1
// в цикле изменяется номер i строки
// массива
для j=0 до 4-1 шаг 1
// в цикле изменяется номер j
// столбца массива
// затем находим элемент массива c
// по формуле
c[i][j]=a[i][j]+b[i][j]
все_для j
все_для i
// вывод массива a построчно
для i=0 до 6-1 шаг 1
// в цикле изменяется номер i строки
// массива
для j=0 до 4-1 шаг 1
// в цикле изменяется номер j
// столбца массива
// затем этот элемент выводится на
// экран
вывод а[i][j]
все_для j
все_для i
// вывод массива b построчно
для i=0 до 6-1 шаг 1
// в цикле изменяется номер i строки
// массива
для j=0 до 4-1 шаг 1
// в цикле изменяется номер j
// столбца массива
// затем этот элемент выводится на
// экран
вывод b[i][j]
все_для j
все_для i
// вывод массива c построчно
для i=0 до 6-1 шаг 1
// в цикле изменяется номер i строки
// массива
для j=0 до 4-1 шаг 1
// в цикле изменяется номер j
// столбца массива
// затем этот элемент выводится на
// экран
вывод c[i][j]
все_для j
все_для i
| #include " stdio.h"
#include " math.h"
#define n 6
#define m 4
int main()
{
float a[n][m], b[n][m], c[n][m];
int i, j;
// ввод массива a построчно
for(i=0; i< =n-1; i++)
{
for (j=0; j< =m-1; j++)
{
printf (" a[%i][%i]=", i, j);
scanf (" %f", & a[i][j]);
}
}
// ввод массива b построчно
for(i=0; i< =n-1; i++)
{
for (j=0; j< =m-1; j++)
{
printf (" b[%i][%i]=", i, j);
scanf (" %f", & b[i][j]);
}
}
// вычисление суммы
for(i=0; i< =n-1; i++)
{
for (j=0; j< =m-1; j++)
{
c[i][j]=a[i][j]+b[i][j];
}
}
// вывод массива a построчно
for (i=0; i< =n-1; i++)
{
for (j=0; j< =m-1; j++)
printf (" %.2f ", a[i][j]);
printf (" \n");
}
printf (" \n");
// вывод массива b построчно
for (i=0; i< =n-1; i++)
{
for (j=0; j< =m-1; j++)
printf (" %.2f ", b[i][j]);
printf (" \n");
}
printf (" \n");
// вывод массива c построчно
for (i=0; i< =n-1; i++)
{
for (j=0; j< =m-1; j++)
printf (" %.2f ", c[i][j]);
printf (" \n");
}
printf (" \n");
return 1;
}
| 3. Создать проект и реализовать данную задачу в среде Visual C++ 6.0.
Пример 2. Дана матрица a и столбец b. Вычислить произведение c=a*b, где c – новый столбец.
Ход выполнения работы
1. Для решения задачи используется формула для формирования элементов массива. Матрице a в алгоритме соответствует двухмерный массив, столбцам b и c – одномерные массивы. Количество элементов массива b должно совпадать с количеством столбцов массива a, а количество элементов массива c – с количеством строк массива a.
2. Написать программу, соответствующую алгоритму:
Алгоритм
| Программа
| объявление вещ: а[6][4], b[4], c[6], цел: i, j
// ввод массива a построчно
для i=0 до 6-1 шаг 1
// в цикле изменяется номер i строки
// массива
для j=0 до 4-1 шаг 1
// в цикле изменяется номер j
// столбца массива
// затем элемент вводится
ввод а[i][j]
все_для j
все_для i
// ввод массива b
для i=0 до 4-1 шаг 1
ввод b[i]
все_для i
// вычисление произведения
для i=0 до 6-1 шаг 1
// в цикле изменяется номер i строки
// массива
// находим i-ый элемент массива c
c[i]=0
для j=0 до 4-1 шаг 1
// в цикле изменяется номер j
// столбца массива
// затем находим элемент массива c
// по формуле
c[i]=c[i]+a[i][j]*b[j]
все_для j
все_для i
// вывод массива a построчно
для i=0 до 6-1 шаг 1
// в цикле изменяется номер i строки
// массива
для j=0 до 4-1 шаг 1
// в цикле изменяется номер j
// столбца массива
// затем этот элемент выводится на
// экран
вывод а[i][j]
все_для j
все_для i
// вывод массива b
для i=0 до 4-1 шаг 1
вывод b[i]
все_для i
// вывод массива c
для i=0 до 6-1 шаг 1
вывод c[i]
все_для i
| #include " stdio.h"
#include " math.h"
#define n 6
#define m 4
int main()
{
float a[n][m], b[m], c[n];
int i, j;
// ввод массива a построчно
for(i=0; i< =n-1; i++)
{
for (j=0; j< =m-1; j++)
{
printf (" a[%i][%i]=", i, j);
scanf (" %f", & a[i][j]);
}
}
// ввод массива b
for(i=0; i< =m-1; i++)
{
printf (" b[%i]=", i);
scanf (" %f", & b[i]);
}
// вычисление произведение
for(i=0; i< =n-1; i++)
{
c[i]=0;
for (j=0; j< =m-1; j++)
{
c[i]=c[i]+a[i][j]*b[j];
}
}
// вывод массива a построчно
for (i=0; i< =n-1; i++)
{
for (j=0; j< =m-1; j++)
printf (" %.2f ", a[i][j]);
printf (" \n");
}
printf (" \n");
// вывод массива b
for (i=0; i< =m-1; i++)
{
printf (" %.2f ", b[i]);
}
printf (" \n");
// вывод массива c
for (i=0; i< =n-1; i++)
{
printf (" %.2f ", c[i]);
}
printf (" \n");
return 1;
}
| 3. Создать проект и реализовать данную задачу в среде Visual C++ 6.0.
Пример 3. Даны матрицы a и b. Вычислить произведение c=a*b, где c – новая матрица.
Ход выполнения работы
1. Для решения данной задачи используется формула для формирования элементов массива. Матрицам a, b и c в алгоритме соответствуют двухмерные массивы. Количество строк массива b должно совпадать с количеством столбцов массива a, а массива c будет иметь размерность , где n – количество строк массива a, m – количество столбцов массива a. Значение p определяет количество столбцов и количество строк массивов a и b соответственно.
2. Написать программу, соответствующую алгоритму:
Алгоритм
| Программа
| объявление вещ: а[3][4], b[4][5], c[3][5], цел: i, j, k
// ввод массива a построчно
для i=0 до 3-1 шаг 1
// в цикле изменяется номер i строки
// массива
для j=0 до 4-1 шаг 1
// в цикле изменяется номер j
// столбца массива
// затем элемент вводится
ввод а[i][j]
все_для j
все_для i
// ввод массива b построчно
для i=0 до 4-1 шаг 1
// в цикле изменяется номер i строки
// массива
для j=0 до 5-1 шаг 1
// в цикле изменяется номер j
// столбца массива
// затем элемент вводится
ввод b[i][j]
все_для j
все_для i
// вычисление произведения
для i=0 до 3-1 шаг 1
// в цикле изменяется номер строки
// массива i
для j=0 до 5-1 шаг 1
// находим элемент массива c
c[i][j]=0
для k=0 до 4-1 шаг 1
// математическая формула
// нахождения
// элемента массива c
c[i][j]=c[i][j]+a[i][k]*b[k][j]
все_для k
все_для j
все_для i
// вывод массива a построчно
для i=0 до 3-1 шаг 1
// в цикле изменяется номер i строки
// массива
для j=0 до 4-1 шаг 1
//в цикле изменяется номер столбца
вывод а[i][j]
все_для j
все_для i
// вывод массива b построчно
для i=0 до 4-1 шаг 1
// в цикле изменяется номер i строки
// массива
для j=0 до 5-1 шаг 1
//в цикле изменяется номер столбца
вывод b[i][j]
все_для j
все_для i
// вывод массива c построчно
для i=0 до 3-1 шаг 1
// в цикле изменяется номер i строки
// массива
для j=0 до 5-1 шаг 1
//в цикле изменяется номер столбца
вывод c[i][j]
все_для j
все_для i
| #include " stdio.h"
#include " math.h"
#define n 3
#define m 5
#define p 4
int main()
{
float a[n][p], b[p][m], c[n][m];
int i, j, k;
// ввод массива a построчно
for(i=0; i< =n-1; i++)
{
for (j=0; j< =p-1; j++)
{
printf (" a[%i][%i]=", i, j);
scanf (" %f", & a[i][j]);
}
}
// ввод массива b построчно
for(i=0; i< =p-1; i++)
{
for (j=0; j< =m-1; j++)
{
printf (" b[%i][%i]=", i, j);
scanf (" %f", & b[i][j]);
}
}
// вычисление произведение
for(i=0; i< =n-1; i++)
{
for(j=0; j< =m-1; j++)
{
// находим элемент массива c
c[i][j]=0;
for (k=0; k< =p-1; k++)
c[i][j]=c[i][j]+a[i][k]*b[k][j];
}
}
// вывод массива a построчно
for (i=0; i< =n-1; i++)
{
for (j=0; j< =p-1; j++)
printf (" %.2f ", a[i][j]);
printf (" \n");
}
printf (" \n");
// вывод массива b построчно
for (i=0; i< =p-1; i++)
{
for (j=0; j< =m-1; j++)
printf (" %.2f ", b[i][j]);
printf (" \n");
}
printf (" \n");
// вывод массива c построчно
for (i=0; i< =n-1; i++)
{
for (j=0; j< =m-1; j++)
printf (" %.2f ", c[i][j]);
printf (" \n");
}
printf (" \n");
return 1;
}
| 3). Создать проект и реализовать данную задачу в среде Visual C++ 6.0.
|