В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
amina555658
amina555658
30.07.2020 18:37 •  Информатика

По данной программе постройте блок схему​

Показать ответ
Ответ:
peterburg1
peterburg1
23.12.2020 19:33
Const
K=5;
type
massiv = array [1..K,1..K] of integer;
var
mass: massiv;
summa,i,j:integer;
begin
randomize;
summa:=0;
for i:=1 to K do
for j:=1 to K do
mass[i,j]:=random(10);
for i:=1 to K do
begin
for j:=1 to K do
begin
write (mass[i,j], ' || ');
end;
writeln;
end;
for i:=1 to K do
for j:=1 to K do
if (i=j) then
summa:=summa+mass[i][j];
writeln;
writeln ('Сумма главной диагонали равна ', summa);
end.
Примечание: так как у меня отсутствует модуль CRT то вывести в графическую ДОС оболочку я вам программу не могу но если сильно хочется то в начале добавляете Uses CRT, а после первого Begin добавляете clrscr

Uses crt; {только при начилии соединения с модулем CRT запуск обычно по Shift+F9}
const
K=5; {зарезервировал постоянное число}
type
massiv = array [1..K,1..K] of integer; {задал массив}
var
mass: massiv;
summa,i,j:integer;
begin
clrscr; {очистка экрана}
randomize;
summa:=0;
for i:=1 to K do {запустил цикл, одномерный массив}
for j:=1 to K do
mass[i,j]:=random(10); {числа не больше 10}
for i:=1 to K do
begin {запускаю цикл}
for j:=1 to K do
begin
write (mass[i,j], ' || ');
end;
writeln;
end;
for i:=1 to K do {вывел квадратичную матрицу, 2-мерный массив}
for j:=1 to K do
if (i=j) then {математика, работаю по главной диагонали}
summa:=summa+mass[i][j]; {суммирую}
writeln;
writeln ('Сумма главной диагонали равна ', summa); {вывожу}
end.
0,0(0 оценок)
Ответ:
Gorki2005
Gorki2005
28.09.2020 05:42
Переменные в программе дают возможность обращаться к областям в памяти компьютера с удобных имен - это упрощает написание, отладку и модификацию программы. Получив описание переменной, современный транслятор (непринципиально, будет это компилятор или интерпретирующая программа) должен отвести под эту переменную область памяти, достаточную для размещения в ней данных и впоследствии учитывать тип переменной, делая, при необходимости, неявные преобразования типа. Ранние языки программирования не допускали неявных преобразований, т.е. преобразований, которые выполняются без участия программиста. Пример таких языков - Fortran II. В этом языке нельзя было смешивать в одном операторе переменные разных типов.
Кстати, о типе переменных. Существуют разные классификации, но для понимания самой концепции типов непринципиально, какой классификацией пользоваться.
Если говорить упрощенно, можно различать числовые и нечисловые данные. С числовыми можно совершать математические операции, а нечисловые можно только вводить в компьютер (например, с клавиатуры) и выводить из компьютера во внешнюю среду (например, отображать на мониторе). И вот тут самое интересное. Перед тем, как компьютер получит числовое данное, оно должно быть введено в форме нечислового. Тут-то и возникает неявное преобразование типов. Когда мы, к примеру, вводим число 25, то нажимаем клавиши "2" и "5", посылая компьютеру определенные коды. Компьютер преобразует их и получает последовательность символов "25". Это то же, что число 25? Если мы пишем 25 на бумаге, то для нас оно хоть число, хоть текст, изображающий число. А для компьютера это не так. Его система команд обрабатывает символы отдельно, числа отдельно. И хранит компьютер число 25 и символы "25" совсем по-разному.  Вот поэтому мы должны описывая переменные, сообщать не только их имена, но и тип - чтобы транслятор "понял", как эти данные ему обрабатывать. Даже числовые данные неоднородны - компьютер может хранить их с разным представлением (целые, с фиксированной точкой, с плавающей точкой) и с разной разрядностью (максимальным числом цифр). И, встретив в операции два числа разного типа, транслятор должен привести их к одному - это тоже случай неявного приведения типов. Например, оно возникнет при вычислении выражения 2.5+1, потому что первое значение дробное, а второе - целое. Транслятор приведет его к 2.5+1.0.

Описание переменной должно быть сделано до её первого использования в программе. Обычно стараются вынести все описания в начало программы - при изучении текста чужой программы так легче найти нужное описание. Это характерно для "классических" языков программирования типа Pascal.
Описание переменных в этом языке делается в разделе, который начинается ключевым словом var (от английского слова variable - переменная).
Альтернативой является описание в месте, непосредственно предшествующем первому использованию переменной - это облегчает первичное написание программы, когда заранее сложно сказать, какие переменные понадобятся - особенно этим любят пользоваться программисты на языках С/С++, хотя и в этом языке есть возможность описать переменные в начале программы.

Примеры описания одних и тех же переменных:
a) Pascal
var
   a:integer;
   b1, b134, delta: real;
   weight: array[1..n] of integer;

б) С/С++
int a;
single b1, b134, delta;
int weight[n+1];

в) BASIC
DIM a AS INTEGER
DIM b1 AS REAL, b134 AS REAL, delta AS REAL
DIM weight(1 To N) AS INTEGER
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота