Что, по вашему мнению, стимулировало развитие техноло- гий обработки текстовой информации? Как это связано с понятием «безбумажные технологии»? Наступит ли такое время, когда все технологии обработки текста будут безбу- мажными?
Begin S:=0; Repeat Read(A); if (A mod 2 <> 0)and(A mod 7 = 0) then S:=S+A; Until A = 0; WriteLn('S = ',S); End.
Теперь объяснение каждой строки:
Var S:longint; i:integer; A:byte; // В эту переменную будет вводится число с клавиатуры. Тип Byte может принимать значения от 0 до 255. Поэтому его как раз хватит.
Begin S:=0; // Тут будет храниться сумма, поэтому переменную следует сперва обнулить.
Repeat // далее начинается цикл Read(A); // эта команда каждый раз считывает с клавы число, и записывает его в переменную A.
if (A mod 2 <> 0)and(A mod 7 = 0) then S:=S+A; //тут проверяется 2 условия, и если они выполняются - к переменной S прибавляется значение переменной А 1 условие: число нечётно, то есть остаток от деления его на 2 не равен нулю (A mod 2 <>0) 2 условие: Число кратно 7, то есть делится без остатка на 7, то есть остаток от деления равен нулю (A mod 7 = 0)
Until A = 0; // Цикл повторяется до тех пор, пока введённое с клавы число не будет равно нулю (A = 0)
WriteLn('S = ',S); // Тут выводится искомая сумма End.
Var
S:longint;
i:integer;
A:byte;
Begin
S:=0;
Repeat
Read(A);
if (A mod 2 <> 0)and(A mod 7 = 0) then S:=S+A;
Until A = 0;
WriteLn('S = ',S);
End.
Теперь объяснение каждой строки:
Var
S:longint;
i:integer;
A:byte; // В эту переменную будет вводится число с клавиатуры. Тип Byte может принимать значения от 0 до 255. Поэтому его как раз хватит.
Begin
S:=0; // Тут будет храниться сумма, поэтому переменную следует сперва обнулить.
Repeat // далее начинается цикл
Read(A); // эта команда каждый раз считывает с клавы число, и записывает его в переменную A.
if (A mod 2 <> 0)and(A mod 7 = 0) then S:=S+A; //тут проверяется 2 условия, и если они выполняются - к переменной S прибавляется значение переменной А
1 условие: число нечётно, то есть остаток от деления его на 2 не равен нулю (A mod 2 <>0)
2 условие: Число кратно 7, то есть делится без остатка на 7, то есть остаток от деления равен нулю (A mod 7 = 0)
Until A = 0; // Цикл повторяется до тех пор, пока введённое с клавы число не будет равно нулю (A = 0)
WriteLn('S = ',S); // Тут выводится искомая сумма
End.
#include <iostream>
#include <iomanip>
#include <vector>
#include <ctime>
int main()
{
using namespace std;
const int n = 5;
int A[n][n];
int D[n][n];
vector<int> B(n);
vector<int> C(n);
vector<int> S(n); //результирующий вектор
//как-нибудь заполняем исходные матрицы и вектора
srand(time(0));
for (int i = 0; i < n; ++i)
{
for (int j = 0; j < n; ++j)
{
A[i][j] = rand() % (n * n) - n * n / 2;
D[i][j] = rand() % (n * n) - n * 2;
}
B[i] = rand() % (n * n) - n;
C[i] = rand() % (n * n) - n * n + n;
}
//выведем исходные данные на экран
cout << "matrix A:\n";
for (int i = 0; i < n; ++i)
{
for (int j = 0; j < n; ++j)
cout << setw(5) << A[i][j];
cout << endl;
}
cout << "\nmatrix D:\n";
for (int i = 0; i < n; ++i)
{
for (int j = 0; j < n; ++j)
cout << setw(5) << D[i][j];
cout << endl;
}
cout << "\nvector B:\n";
for (int i = 0; i < n; ++i)
cout << setw(5) << B[i] << endl;
cout << "\nvector C:\n";
for (int i = 0; i < n; ++i)
cout << setw(5) << C[i] << endl;
//вычислим требуемое
for (int i = 0; i < n; ++i)
{
S[i] = 0;
for (int j = 0; j < n; ++j)
S[i] += D[i][j] * C[j];
S[i] += 3 * B[i];
}
//выведем результат на экран
cout << "\nvector S = D * C + 3 * B:\n";
for (int i = 0; i < n; ++i)
cout << setw(5) << S[i] << endl;
return 0;
}