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

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

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

> Простые алгоритмы
Евген
сообщение 15.03.2004 1:41
Сообщение #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-ю версию борланд паскаля.Сильно тормозит, не могу оперировать мышью.
Буду сильно признателен,если кто-нибудь найдёт время для оказания помощи.
С уважением, Евген.
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 14)
pascal65536
сообщение 15.03.2004 4:55
Сообщение #2


Пионер
**

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

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


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

У меня тоже win2k проблем с паскалем нет, правда у меня 6-я версия. Только надо работать в полноэкранном режиме.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Catty
сообщение 15.03.2004 20:58
Сообщение #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 
 К началу страницы 
+ Ответить 
Atos
сообщение 16.03.2004 14:34
Сообщение #4


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

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

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


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

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

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


Гость






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


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

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

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


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


;)


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


Бывалый
***

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

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


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

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


--------------------
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 
 К началу страницы 
+ Ответить 
Евген
сообщение 19.03.2004 1:48
Сообщение #8


Гость






Catty
Спасибо.Кстати нашёл.Вот ссылка кому надо http://pascal.dax.ru/?books
 К началу страницы 
+ Ответить 
Atos
сообщение 20.03.2004 7:45
Сообщение #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 - 22.03.2004 5:59
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Guest
сообщение 22.03.2004 13:05
Сообщение #10


Гость






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


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

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

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


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


Гость






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


Бывалый
***

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

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


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


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


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

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

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


To Atos, fms:

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


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

 



- Текстовая версия 28.07.2025 17:36
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"