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

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

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

 
 Ответить  Открыть новую тему 
> Работа с числами
rov4
сообщение 13.01.2005 11:42
Сообщение #1


Новичок
*

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

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


Привет всем!
rolleyes.gif У меня 2 вопроса:

1. Найти сумму целых положительных чисел, кратных 3 и меньших 200. Вот, что у меня получилось:
Код
program lab;
var sum,i,n:integer;
begin
sum:=0;
n:=1;
for i:=1 to 199 do
if i/3=0 then
begin
sum:=sum+i;
n:=n+1;
writeln('number of elements is=',n);
readln(n);
end;
writeln('Summa is=',sum:7:6);
readln;
end.

Естественно, сумма не может=0, а у меня в результате получается, что она=0, к тому же, комп не считает количество чисел. Не понимаю, в чём проблема...
2.Требуется найти корень уравнения: 3sin(sqrt(x))+0.35x-3.8=0 c точностью е=1/10000. Корень уравнения находится на отрезке [2;3]. Точное значение коня=2.2985. Использовать метод итераций. На печать вывести вычисленное значение корня и для сравнения точное значение корня.
У меня получилось следующее:
Код
program lab;
uses crt;
var x0,x1,x,a,b,e:real;
iteraz:integer;
function fun(x:real):real;
      begin
      fun:=(3.8-(3*sin(sqrt(x))))/0.35;
      end;
begin
clrscr;
write('x0=2.2');
readln(x1);
write('e=0.001');
readln(e);
iteraz:=0;
repeat
iteraz:=iteraz+1;
x0:=x1;
x1:=fun(x0);
until(abs(x1-x0)<=e);
writeln('ђҐиҐ­ЁҐ га ў­Ґ­Ёп......fun=');
writeln('’®з­®Ґ §­ 祭ЁҐ Є®а­п......2.2985');
writeln('‚лзЁб«Ґ­­®Ґ §­ 祭ЁҐ Є®а­п x=',x1:6:5);
readln(x);
writeln('—Ёб«® ЁвҐа жЁ©',iteraz);
readln(iteraz);
writeln('Џа®Ја   § ўҐа襭 , ­ ¦ЁвҐ ENTER');
readln;
end.
В чём здесь ошибка?

Очень прошу помочь мне ответить на эти вопросы.
Заранее спасибо.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 13.01.2005 12:32
Сообщение #2


Гость






1.
Цитата
Найти сумму целых положительных чисел, кратных 3 и меньших 200

Код
var
i, s, n: integer;
begin
i := 0; s := 0; n := 0
repeat
  inc(s, i); inc(i, 3); inc(n)
until i > 200;
writeln('s = ', s, ' n = ', n)
end.


Цитата
Не понимаю, в чём проблема...
Все просто, вместо того, чтобы делить число на 3 (в строке if i/3=0 then ...) нужно вычислять остаток от деления числа на 3 (if (i mod 3)=0 then ...)

Кроме этого неясен смысл вот этих 2-х строк:
Код
writeln('number of elements is=',n);
readln(n); { <--- Зачем еще раз вводить N? }

Возможно имелось в виду просто ReadLn; ?

Сообщение отредактировано: volvo - 13.01.2005 12:41
 К началу страницы 
+ Ответить 
rov4
сообщение 13.01.2005 13:10
Сообщение #3


Новичок
*

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

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


volvo,
cпасибо lol.gif за подсказку!
(Вот только i<200, a не i>200.)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 13.01.2005 13:47
Сообщение #4


Гость






rov4
Нет, как раз i>200 !!! Я же использую не цикл While а цикл Until - а в нем как только условие начинает выполняться - цикл заканчивается...

P.S. Я же говорил, что тестирую программы перед выкладыванием на форум. Неужели я бы не заметил ТАКОЙ ошибки...
 К началу страницы 
+ Ответить 
rov4
сообщение 18.01.2005 12:42
Сообщение #5


Новичок
*

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

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


volvo,
Извини, ты, безусловно, прав! Теперь у меня всё, наконец-то, получилось! Огро-о-омное спасибо!!! :flowers:
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



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