Stilet, ну, если бы так всё просто было, тогда достаточно написать N*N*N
думаю, что задача состоит не в том, чтобы вывести куб числа N, а в том, чтобы вывести N нечётных чисел, которые в сумме дают нужное значение, равное кубу числа N.
Пользователь
Регистрация: 22.01.2012
Сообщений: 97
к примеру 6^3=31+33+35+37+39+41
напишу прогу за 300рублей из-а того, что не до всех дойдёт такой приметивнейший фокус,
пс ералашные и то круче
так как платишь
Модераторам: не баньте, у мя такие полезные советы, они стоющие
Форумчанин
Регистрация: 05.09.2011
Сообщений: 869
Не совсем ясно, что именно требуется.. Что есть «n-ное число»?
Короче, вот код, возводящий в куб по этому принципу. Я сделал рекурсию, поскольку на нее есть явный намек в условии.
function Last(n: integer): integer; begin if n=0 then Last:= -1 else Last:= Last(n-1)+n*2 end; var i,j,n,m: LongInt; begin write(‘type in a positive integer number: ‘); readln(n); m:= 0; j:= Last(n-1); for i:=1 to n do begin j:= j+2; m:= m+j end; writeln(n,’^3 = ‘,m); readln end.
Предпочитаю на «ты».
Пользователь
Регистрация: 27.02.2010
Сообщений: 90
var S,A,n,i:integer; begin write(‘Введите натуральное число -> ‘); readln(n); S:=(n)*(n-1) div 2; A:=(S-1)*2+1; write(n,’^3 =’); for i:=1 to n do begin A:=A+2; write(‘ ‘,A); end; readln; end.
procedure qwerty; var S,A,n,i:integer; O:string; begin write(‘Введите натуральное число > 0 -> ‘); readln(n); S:=(n)*(n-1) div 2; A:=(S-1)*2+1; write(n,’^3 =’); for i:=1 to n do begin A:=A+2; write(‘ ‘,A); end; writeln; write(‘Попробовать еще? Y/N ->’); readln(O); if (O[1]=’Y’) or (O[1]=’y’) then qwerty; end; begin qwerty; end.
как — то так )
Последний раз редактировалось Arhangel7; 02.03.2012 в 01:01 .
Простой калькулятор на Pascal /pascal programming lesson #1
Источник: www.programmersforum.ru
Кубы чисел от A до B
Вывести на экран кубы чисел от A до B, которые вводит пользователь.
Для решения задачи используется цикл for.
Программа на языке Паскаль:
var a, b, i: integer; begin write(‘A: ‘); readln(a); write(‘B: ‘); readln(b); for i := a to b do writeln(i, ‘ в кубе = ‘, i * i * i); end.
Пример выполнения программы:
A: 2 B: 10 2 в кубе = 8 3 в кубе = 27 4 в кубе = 64 5 в кубе = 125 6 в кубе = 216 7 в кубе = 343 8 в кубе = 512 9 в кубе = 729 10 в кубе = 1000
Пользователь может ввести значения так, что a будет больше b . В таком случае цикл for не выполнится. Мы можем использовать оператор ветвления if-else для обработки ситуаций, когда значение b меньше, чем a :
var a, b, i: integer; begin write(‘A: ‘); readln(a); write(‘B: ‘); readln(b); if a < b then for i := a to b do writeln(i, ‘ в кубе = ‘, i * i * i) else for i := a downto b do writeln(i, ‘ в кубе = ‘, i * i * i); end.
A: 5 B: 1 5 в кубе = 125 4 в кубе = 64 3 в кубе = 27 2 в кубе = 8 1 в кубе = 1
A: 1 B: 5 1 в кубе = 1 2 в кубе = 8 3 в кубе = 27 4 в кубе = 64 5 в кубе = 125
Оператор if можно использовать для обмена значений переменных до цикла:
Рисуем в среде программирования Pascal
var a, b, i: integer; begin write(‘A: ‘); readln(a); write(‘B: ‘); readln(b); if a > b then begin i := a; a := b; b := i; end; for i := a to b do writeln(i, ‘ в кубе = ‘, i * i * i) end.
Пример выполнения программы:
A: 6 B: 3 3 в кубе = 27 4 в кубе = 64 5 в кубе = 125 6 в кубе = 216
Задачу можно решить в том числе с помощью цикла while языка программирования Pascal:
var a, b: integer; begin write(‘A: ‘); readln(a); write(‘B: ‘); readln(b); while a
Вместо выражения a := a + 1 можно использовать вызов инкрементирующей (увеличивающей на единицу) переменную процедуры: inc(a)
Источник: pas1.ru