// PascalABC.NET 3.3, сборка 1625 от 17.01.2018 // Внимание! Если программа не работает, обновите версию!
begin var a:=ReadReal('Введите число a:'); var n:=ReadInteger('Введите показатель степени n:'); if n<=0 then begin Writeln('Показатель степени должен быть натуральным числом'); Exit end; // перевод показателя степени в двоичную систему счисления var t:=n; var r:string:=''; while t>=2 do (r,t):=(t mod 2+r,t shr 1); r:=t+r; // возведение в степень var (rr,i):=(a,2); while i<=r.Length do begin rr:=Sqr(rr); if r[i]='1' then rr*=a; i+=1 end; Writeln(a,'^',n,' = ',rr) end.
Примеры Введите число a: 3.182 Введите показатель степени n: 11 3.182^11 = 338611.675261463
Введите число a: 2 Введите показатель степени n: 10 2^10 = 1024
div - Целая часть от деления mod - Остаток от деления 95 div 2 = 47 95 mod 2 = 1 47 div 2 = 23 47 mod 2 = 1 23 div 2 = 11 23 mod 2 = 1 11 div 2 = 5 11 mod 2 = 1 5 div 2 = 2 5 mod 2 = 1 2 div 2 = 1 2 mod 2 = 0 1 div 2 = 0 1 mod 2 = 1
Компьютерная графика - одна из областей применения компьютеров. Создания рисунков на компьютере происходит с специально предназначенных программ - графических редакторов.
Графический редактор - прикладное среду, предназначенное для создания и редактирования графических изображений.
Документом графического редактора является рисунок. По принципам построения графические изображения бывают растровые, векторные, фрактальные. Есть редакторы, которые поддерживают как векторную, так и растровую графику, благодаря встроенным программам для конвертации файлов из одного формата в другой. Растровое изображение состоит из маленьких одноцветных точек - пикселей (от англ. Picture element - элемент картинки). Это наименьший элемент растрового изображения, который характеризуется цветом и яркостью. Растр - представление изображения в виде двумерного массива точек, упорядоченных в строки и столбцы. Растровое изображение на экране состоит из равных по величине пикселей, которые при увеличении выглядят как квадратики. Для определения размера растрового рисунка указывают количество пикселей по вертикали и горизонтали, например. Растровые графические редакторы - Paint, Adobe Photoshop. Форматы хранения растровых изображений Bmp, Pcx, Tiff (для хранения отсканированных изображений), Psd, Jpeg, Gif, Fpx.
Векторное изображение состоит из готовых элементов (графических примитивов): отрезков прямых, эллиптических дуг, фрагментов прямоугольников, кругов и т.п.. Пользователь создает один из объектов, изменяет его параметры (размер, положение, угол поворота), а компьютер чертит его уже с измененными характеристиками. Процесс редактирования в векторных графических редакторах заключается в изменении параметров графических примитивов или добавлении новых объектов. Векторные графические редакторы - CorelDraw.
Форматы хранения векторных изображений Eps, Dcs, Pdf, Cdr, Cdx, Cmx, Cpx. Фрактальная изображение, как и векторное, основанное на математических вычислениях. Однако базовым элементом фрактальной графики является сама математическая формула, то есть никаких объектов в памяти компьютера не хранится и изображение формируется исключительно по уравнениям. Таким образом строят как простейшие регулярные структуры, имитирующих природный ландшафт, так и трехмерные объекты. Отдельным предметом считается трехмерная (3D) графика, изучающая приемы и методы построения объемных моделей объектов в виртуальном пространстве. Как правило, в ней сочетаются векторный и растровый формирования изображений.
Трехмерная графика нашла широкое применение в таких отраслях, как научные расчеты, инженерное проектирование, компьютерное моделирование объектов!
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ReadReal('Введите число a:');
var n:=ReadInteger('Введите показатель степени n:');
if n<=0 then begin
Writeln('Показатель степени должен быть натуральным числом');
Exit
end;
// перевод показателя степени в двоичную систему счисления
var t:=n;
var r:string:='';
while t>=2 do (r,t):=(t mod 2+r,t shr 1);
r:=t+r;
// возведение в степень
var (rr,i):=(a,2);
while i<=r.Length do begin
rr:=Sqr(rr);
if r[i]='1' then rr*=a;
i+=1
end;
Writeln(a,'^',n,' = ',rr)
end.
Примеры
Введите число a: 3.182
Введите показатель степени n: 11
3.182^11 = 338611.675261463
Введите число a: 2
Введите показатель степени n: 10
2^10 = 1024