Другие языки программирования и технологии
Для тех кто разбирается в Turbo Pascal 7.0 помогите плиз))))
Помогите написать тело цикла для задачи: "Вывести квадрат и куб любых десяти чисел следующей последовательности: 1, 2, 4, 7, 11, 16, 22... и т.д."Операторы которые могу использовать для программы это "else""if then""for to do""for downto do"Ну или они должны вместе быть короче я не знаю))) помогите плиз))))
Доброго времени суток.
Димкаа, тип переменных надо брать Longint, иначе кубы не поместятся в разрядной сетке ТР. Максимальное положительное значение Integer равно 32767, а куб 37 уже 50653.
var
j, k, n : Longint;
begin
N := 1;
k := 0;
for j:=1 to 10 do begin
N := N + k;
K := K + 1;
WriteLn(N:4, N*N :6, N*N*N:7 );
end;
ReadLn;
end.
В качестве начального значения для j можете взять другое число с соответствующей коррекцией конечного значения.
Удачи!
Димкаа, тип переменных надо брать Longint, иначе кубы не поместятся в разрядной сетке ТР. Максимальное положительное значение Integer равно 32767, а куб 37 уже 50653.
var
j, k, n : Longint;
begin
N := 1;
k := 0;
for j:=1 to 10 do begin
N := N + k;
K := K + 1;
WriteLn(N:4, N*N :6, N*N*N:7 );
end;
ReadLn;
end.
В качестве начального значения для j можете взять другое число с соответствующей коррекцией конечного значения.
Удачи!
var
i: integer;
iterator: integer;
res_2, res_3: integer;
n: integer;
Begin
n := 1;
i := 1;
iterator := 0;
while(n <= 10) ////количество чисел в последовательности, например 10
begin
i : = i + iterator;
res_2 := i*i;
res_3 := i*i*i;
iterator := iterator + 1;
n := n + 1;
writeline("Квадррат = ", res2, " Куб = ", res_3);
end;
end.
i: integer;
iterator: integer;
res_2, res_3: integer;
n: integer;
Begin
n := 1;
i := 1;
iterator := 0;
while(n <= 10) ////количество чисел в последовательности, например 10
begin
i : = i + iterator;
res_2 := i*i;
res_3 := i*i*i;
iterator := iterator + 1;
n := n + 1;
writeline("Квадррат = ", res2, " Куб = ", res_3);
end;
end.
uses crt;
var i,n:integer;
A:ARRAY[1..10000]OF INTEGER;
begin
a[1]:=1;
for I:=2 to 10000 do
a:=a[i-1]+(i-1);
readln(n);//ввод первого элемента массива с которго начинается отсчет (например 3 соответствует 4, а 4 соответствует 7)
for i:=n to n+10 do
if i<>1 then writeln(a,' ',power(a,2),' ',power(a,3))
else writeln('1 1 1');
readln
end.
То что писали ранее (1 ответ это только для первых 10) фигня
var i,n:integer;
A:ARRAY[1..10000]OF INTEGER;
begin
a[1]:=1;
for I:=2 to 10000 do
a:=a[i-1]+(i-1);
readln(n);//ввод первого элемента массива с которго начинается отсчет (например 3 соответствует 4, а 4 соответствует 7)
for i:=n to n+10 do
if i<>1 then writeln(a,' ',power(a,2),' ',power(a,3))
else writeln('1 1 1');
readln
end.
То что писали ранее (1 ответ это только для первых 10) фигня
Андрей Избицкий
Фигня, говрите... Ну что ж, приступим к разбору полетов.
Про Longint я уже говрил, но вы не прислушались, а зря, поскольку, повторюсь, максимально возможное значение Integer равно 32767, а этого хватает только для правильного отбражения куба 8 членов последовательности, но никак не 10. Итак, Longint, но и здесь не все шокаладно. Максимальное значение, помещающееся в переменную такого размера 2147483647, чего хватает для вывода куба только 51 члена последовательности, а для квадрата - 304. Согласитесь, в подобных обстоятельствах резервировать 10000 интеджеров в массиве выглядит, по-меньшей мере, несколько странно, мягко говоря.
Далее. В стандарте языка Турбо Паскаль (а именно он фигурирует в вопросе) нет функции возведения в степень. Это функция из модуля Math RTL Delphi.
Так что, как говорится, учите матчасть.
Про Longint я уже говрил, но вы не прислушались, а зря, поскольку, повторюсь, максимально возможное значение Integer равно 32767, а этого хватает только для правильного отбражения куба 8 членов последовательности, но никак не 10. Итак, Longint, но и здесь не все шокаладно. Максимальное значение, помещающееся в переменную такого размера 2147483647, чего хватает для вывода куба только 51 члена последовательности, а для квадрата - 304. Согласитесь, в подобных обстоятельствах резервировать 10000 интеджеров в массиве выглядит, по-меньшей мере, несколько странно, мягко говоря.
Далее. В стандарте языка Турбо Паскаль (а именно он фигурирует в вопросе) нет функции возведения в степень. Это функция из модуля Math RTL Delphi.
Так что, как говорится, учите матчасть.
Андрей Избицкий
Если же вас смутило в моем ответе то, что я начал счет с первого элемента, то сделано это намеренно, чтобы вопрошающий хоть немного подумал. В комменте к своему ответу я привел версию позволяющую вывести последовательность с любого члена. Ессно, с учетом озвученных ранее ограничений.
Заметьте, всего 4 переменных, процедурка на две строчки, да 11 строчек от begin до end.
Заметьте, всего 4 переменных, процедурка на две строчки, да 11 строчек от begin до end.
это я Gorbatenko Alex вот исправленное решение я че то тупо спастиk
в строке квадратный скобки не ставятся
if i<>1 then writeln( a ,' ',power(a, 2),' ',power(a, 3))
где power
uses crt;
var i,n:longint;
A:ARRAY[1..10000]OF INTEGER;
begin
a[1]:=1;
for I:=2 to 10000 do
a:=a[i-1]+(i-1);
readln(n);//ввод первого элемента массива с которго начинается отсчет (например 3 соответствует 4, а 4 соответствует 7)
for i:=n to n+10 do
if i<>1 then writeln( a ,' ',power(a, 2),' ',power(a, 3))
else writeln('1 1 1');
end.
в строке квадратный скобки не ставятся
if i<>1 then writeln( a ,' ',power(a, 2),' ',power(a, 3))
где power
uses crt;
var i,n:longint;
A:ARRAY[1..10000]OF INTEGER;
begin
a[1]:=1;
for I:=2 to 10000 do
a:=a[i-1]+(i-1);
readln(n);//ввод первого элемента массива с которго начинается отсчет (например 3 соответствует 4, а 4 соответствует 7)
for i:=n to n+10 do
if i<>1 then writeln( a ,' ',power(a, 2),' ',power(a, 3))
else writeln('1 1 1');
end.
Похожие вопросы
- Turbo Pascal 7.0 помогите пожалуйста!!!
- turbo pascal 7.0 Определить принадлежность к области точек с заданными координатами!!!
- turbo pascal 7.0!
- Turbo pascal 7.0,задача
- В чём разница С++,С#,Turbo Pascal 7.0!И что лучше и легче?
- Для чего в школах преподают Turbo Pascal 7.0?
- Какой язык програмирования выбрать? Уже заканчиваю изучение Turbo pascal 7.0, какой изучать потом? Напишите поконкретнее
- Как вставить текст в Turbo Pascal 7.1???
- Помогите с Pascal 7.0!Кто чем может!
- С/C++ программисту изучить turbo pascal 7 в короткие сроки (вынужденная необходимость)
uses Crt;
var
j,k,n,m : Integer;
procedure Iteration;
begin
N := N + k;
k := K + 1;
end;
begin
ClrScr;
Write('Введите начальный номер : ');
ReadLn(m);
N := 1;
k := 0;
for j:=1 to m-1 do Iteration;
for j:=1 to 10 do begin
Iteration;
WriteLn(n:8, n*n:12, n*n*n:15);
end;
ReadLn;
end.
Выводит по 51 член последовательности. Дальше наступает переполнение при вычислении куба.