Задание 6. Нарисуйте на клетчатом поле (рис. 3.12) пер- вую букву своего имени В с закрашенных клеток, Составьте программу рисования этой буквы исполнителем Робот. Исходное положение Робота обозначено квадратом В центре поля.
Program divisors;//вообще ничего не делает(аля название программы) var num,divisor,i,sum:longint;//описываем переменные типа longintbegin//начало программы write('Vvedite chislo:');//выводим текст readln(num);//считываем число write('Vvedite delitel:');//выводим текст read(divisor);//считываем заданное число(будем использовать при поиске делителей больше заданного) sum:=0;//зануляем переменную(изначально равна нулю, но на всякий случай ;) привет от с++) for i:=1 to num do //цикл от 1 до числа(можно оптимизировать идя до корня из num) begin//начало цикла if num mod i = 0 then//если на очередном шаге остаток от деления числа на i равен нулю begin//начало условия write(i,' ');//выводим делитель sum:=sum+i;//суммируем end;//конец условия end;//конец цикла writeln();//переходим на следующую строку writeln(sum);//выводим сумму for i:=1 to num do//аналогично выше begin if (num mod i = 0) and (i mod 2 = 0) then // если число делитель и делится на 2 begin write(i,' '); end; end; writeln(); for i:=1 to num do begin if (num mod i = 0) and (i mod 2 = 1) then // не делится на 2 begin write(i,' '); end; end; writeln(); for i:=1 to num do begin if (num mod i = 0) and (i>divisor) then // больше заданного числа begin write(i,' '); end; end;end.//конец программы
непозиционных системах счисления вес цифры (т. е. тот вклад, который она вносит в значение числа) не зависит от ее позиции в записи числа. Так, в римской системе счисления в числе ХХХII (тридцать два) вес цифры Х в любой позиции равен просто десяти.
В позиционных системах счисления вес каждой цифры изменяется в зависимости от ее положения (позиции) в последовательности цифр, изображающих число. Например, в числе 757,7 первая семерка означает 7 сотен, вторая — 7 единиц, а третья — 7 десятых долей единицы.
Сама же запись числа 757,7 означает сокращенную запись выражения
var num,divisor,i,sum:longint;//описываем переменные типа longintbegin//начало программы write('Vvedite chislo:');//выводим текст readln(num);//считываем число write('Vvedite delitel:');//выводим текст read(divisor);//считываем заданное число(будем использовать при поиске делителей больше заданного) sum:=0;//зануляем переменную(изначально равна нулю, но на всякий случай ;) привет от с++) for i:=1 to num do //цикл от 1 до числа(можно оптимизировать идя до корня из num) begin//начало цикла if num mod i = 0 then//если на очередном шаге остаток от деления числа на i равен нулю begin//начало условия write(i,' ');//выводим делитель sum:=sum+i;//суммируем end;//конец условия end;//конец цикла writeln();//переходим на следующую строку writeln(sum);//выводим сумму for i:=1 to num do//аналогично выше begin if (num mod i = 0) and (i mod 2 = 0) then // если число делитель и делится на 2 begin write(i,' '); end; end; writeln(); for i:=1 to num do begin if (num mod i = 0) and (i mod 2 = 1) then // не делится на 2 begin write(i,' '); end; end; writeln(); for i:=1 to num do begin if (num mod i = 0) and (i>divisor) then // больше заданного числа begin write(i,' '); end; end;end.//конец программы
Объяснение:
непозиционных системах счисления вес цифры (т. е. тот вклад, который она вносит в значение числа) не зависит от ее позиции в записи числа. Так, в римской системе счисления в числе ХХХII (тридцать два) вес цифры Х в любой позиции равен просто десяти.
В позиционных системах счисления вес каждой цифры изменяется в зависимости от ее положения (позиции) в последовательности цифр, изображающих число. Например, в числе 757,7 первая семерка означает 7 сотен, вторая — 7 единиц, а третья — 7 десятых долей единицы.
Сама же запись числа 757,7 означает сокращенную запись выражения
700 + 50 + 7 + 0,7 = 7 . 102 + 5 . 101 + 7 . 100 + 7 . 10—1 = 757,7.