IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Простые алгоритмы
сообщение
Сообщение #1


Гость






Я думаю, для тех, кто разбирается в этой теме, задачи покажутся элементарными.Я только начинаю осваивать этот предмет.И, к сожалению, испытываю трудности уже в самом начале.
задача номер 1:
сделайте таблицу:
1-й столбец - числа 5,10,15,...100
2-й - числа из 1-го уменьшенные на 10 и умноженные на 4.
3-й - если число из 2-го столбца больше 200, должна выписаться разница этого числа и 200.Столбцы должны быть правильно отформатированны, чтобы каждое число было одно под другим.
я написал, как сумел, но не выходит 3-й столбец.

Код

program du2;
var I,X: Longint;
begin
for I:= 1 to 20 do
writeln(I*5:2,' ',4*(I*5-10):3,' ');
{третий столбец я пытался изобразить так, но что-то не идёт}
X:= 4(I*5-10)
if X > 200
then X-200;
writeln(I);
end.


и 2-я задачка:
Составить подпрограмму-фукцию, у которой 2 параметра десятичное число X и целое число N.Подрограмма вычислит значение X в Nй степени.Попрограмму вложить в главную программу,в которой можно будет ввести числа X и N и потом вызовом подпрограммы выдаст результат X в Nй степени.


К своему стыду, я даже не брался за 2-ю задачу.

И ещё вопрос чисто по работе самого паскаля.У меня Windows 2000, поставил 7-ю версию борланд паскаля.Сильно тормозит, не могу оперировать мышью.
Буду сильно признателен,если кто-нибудь найдёт время для оказания помощи.
С уважением, Евген.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Пионер
**

Группа: Пользователи
Сообщений: 62
Пол: Мужской

Репутация: -  1  +


В стандартном паскале нет функции возведения в степень. Придётся действительно писать специальную функцию. Обычно используют логарифмы и антилогарифмы для возведения в степень.

У меня тоже win2k проблем с паскалем нет, правда у меня 6-я версия. Только надо работать в полноэкранном режиме.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Бывалый
***

Группа: Пользователи
Сообщений: 239
Пол: Женский
Реальное имя: Юлия

Репутация: -  3  +


x^a=exp(a*ln(x)) - так можешь возвести число в степень в Паскале!


--------------------
For every evil under the sun
There is a remedy or there is none
If there is one - try to find it
If there is none - never mind it!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Прогрессор
****

Группа: Пользователи
Сообщений: 602
Пол: Мужской
Реальное имя: Михаил

Репутация: -  9  +


Цитата
я написал, как сумел, но не выходит 3-й столбец.

Строчка writeln(I); должна быть вставлена в цикл for.

И, кстати, что это за непонятная строчка?
Код
if X > 200 then X-200;
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






Atos
Это я пытался задать алгоритм 3-го столбца.Но видимо неудачно.Если знаешь, будь добр, подскажи.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Смотрю...
*****

Группа: Пользователи
Сообщений: 1 055
Пол: Мужской
Реальное имя: Пшеничный Алексей Анатольевич

Репутация: -  6  +


Наверное он имел в виду:
Код
if X > 200 then X:=X-200;


;)


--------------------
Если что-то не делает того, что вы запланировали ему делать - это еще не означает, что оно бесполезно.
--------------------
Прежде, чем задать вопрос - Правила :: FAQ :: Поиск
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Бывалый
***

Группа: Пользователи
Сообщений: 239
Пол: Женский
Реальное имя: Юлия

Репутация: -  3  +


В книге Фаронова есть твоя вторая задача! Можешь порыться в форуме, здесь по-моему уже кто-то оставлял ссылку на его сайт, посмотри может она там есть!! ;)

Сообщение отредактировано: Catty -


--------------------
For every evil under the sun
There is a remedy or there is none
If there is one - try to find it
If there is none - never mind it!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






Catty
Спасибо.Кстати нашёл.Вот ссылка кому надо http://pascal.dax.ru/?books
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Прогрессор
****

Группа: Пользователи
Сообщений: 602
Пол: Мужской
Реальное имя: Михаил

Репутация: -  9  +


Попробуй для распечатки 3 столбца
Код

for I:= 1 to 20 do
begin
write(I*5:2,' ',4*(I*5-10):3,' ');
X:= 4(I*5-10);
if X > 200 then writeln(X-200) else writeln(' ');
end;


Сообщение отредактировано: Atos -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Гость






Пишет
Error 94= "." expected.
huh.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Прогрессор
****

Группа: Пользователи
Сообщений: 602
Пол: Мужской
Реальное имя: Михаил

Репутация: -  9  +


Так наверное один end лишний! Или что-то в этом духе...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


Гость






А ты сам пробовал запустить? а то чего то у меня не выходит.... unsure.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


Бывалый
***

Группа: Пользователи
Сообщений: 195
Пол: Женский

Репутация: -  0  +


дак наверно end'a с точкой не хватает.. раз "expected".


--------------------
непонимающая..
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #14


Смотрю...
*****

Группа: Пользователи
Сообщений: 1 055
Пол: Мужской
Реальное имя: Пшеничный Алексей Анатольевич

Репутация: -  6  +


To Atos, fms:

Помоему я понял... smile.gif
Был приведен только ФРАГМЕНТ проги, а он наверное пытался его откомпелировать... Может "доуказать" раздел описаний, и самое главное "PROGRAM ..."?


--------------------
Если что-то не делает того, что вы запланировали ему делать - это еще не означает, что оно бесполезно.
--------------------
Прежде, чем задать вопрос - Правила :: FAQ :: Поиск
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #15


Гость






короче справился я с задачками...всем спасибо за участие.....вот кому интересно их решение:
Код

program pr1;
var
i,x:longint;
begin
for i:=1 to 20 do
begin
write(i*5:3,' ');
x:=4*(i*5-10);
write(x:3,' ');
if
x>200
then
write (x - 200);
writeln;
end;
end.

и вторая:
Код

program du3;
var x,n:integer;
function Mocnina(x,n:double):double;
begin
Mocnina:= round(exp(n*ln(x)));
end;
begin
write('Zadejte x=');
readln(x);
write('Zadejte n=');
readln(n);
write(Mocnina(x,n));
end.
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 4:41
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name