Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 02.06.2012, 08:57   #31
Paster Fob
Форумчанин
 
Аватар для Paster Fob
 
Регистрация: 06.02.2011
Сообщений: 105
По умолчанию

Выше указанное мной задание,я решил так:

Код:
const csize=10;

type tset=set of byte;

procedure readset(var ax:tset);
var i,n:byte;
begin
  ax:=[];i:=0;
  while i<>csize do begin
    n:=random(100)+1;
    if not (n in ax) then begin
      ax:=ax+[n];
      inc(i);
    end;
  end;
end;

var x1,x2,x3,y,z:tset;
    i,n:byte;
begin
  randomize;
  readset(x1);
  readset(x2);
  readset(x3);
  y:=(x1+x2)-(x2*x3);
  n:=0;z:=[];
  for i:=1 to 100 do
    if i in y then begin
      write(i,' ');
      inc(n);
      if i mod 3 = 0 then
        z:=z+[i];
  end;
  writeln;
  writeln('Мощность множества y = ',n);
  if z<>[] then
    writeln('числа кратные 3:');
    for i:=1 to 100 do
      if i in z then
        write(i,' ');
  readln
end.
Paster Fob вне форума
Старый 18.06.2012, 22:01   #32
Paster Fob
Форумчанин
 
Аватар для Paster Fob
 
Регистрация: 06.02.2011
Сообщений: 105
По умолчанию

И снова здраствуйте,у меня вновь проблема с задачей не могу понять как решать такое.

Как можно вычислить сумму в бесконечном цикле?
Я написал,но не уверен что правильно.
Код:
var n:integer;
    s,x:real;
begin
  readln(x);
  n:=1;
  repeat
    s:=exp((n+1)*ln(x))/sqr((2*n)-1);
    inc(n);
    writeln(s:5:5);
  until false;
  readln
end.
Paster Fob вне форума
Старый 18.06.2012, 22:11   #33
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,289
По умолчанию

Paster Fob, лучше вставлять картинкой, а то не видно формулы-то.
Вот что видят пользователи:

А вот, что должно быть:

Насчет кода - он действительно неправилен.
В компьютерных вычислениях не может быть бесконечного цикла (по крайней мере, не в этом случае).
(через несколько минут выложу свое решение)
А вот и оно:
Код:
const
  eps = 0.0001;
  maxiter = 200;

var
  n: integer;
  s, s0, x, a: real;

begin
  readln(x);
  n := 1;
  s := 0;
  a := x;
  repeat
    s0 := s;
    a := a * x;
    s := s + a / sqr(2 * n - 1);
    inc(n);
  until (abs(s0 - s) < eps) or (n > maxiter);
  writeln(s:5:5);
  readln
end.
Выход из цикла, как только новый элемент меньше eps (для сходящихся сумм) или когда количество итераций больше 200 (для расходящихся).
Если ввести x меньше 1, то каждый следующий элемент будет меньше предыдущего. Если же ввести x больше 1, то элементы будут расти.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 18.06.2012 в 23:11.
BDA вне форума
Старый 21.06.2012, 20:30   #34
Paster Fob
Форумчанин
 
Аватар для Paster Fob
 
Регистрация: 06.02.2011
Сообщений: 105
По умолчанию

Что ткое eps,и почему оно равно 0,0001?В формуле вообще нет такого значения,откуда оно взялось?Что такое сходящиеся и расходящиеся суммы,то же не понятно мне.
в решении a=x^2;
в формуле нет такого,в ней указано x^(n+1);
Paster Fob вне форума
Старый 21.06.2012, 20:51   #35
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,289
По умолчанию

Код:
  n := 1;
  s := 0;
  a := x;
  repeat
    s0 := s;
    a := a * x;
    s := s + a / sqr(2 * n - 1);
    inc(n);
  until (abs(s0 - s) < eps) or (n > maxiter);
Рассмотрим данный кусочек кода.
В начале задаем а=х, а при каждой итерации домножаем а на х.
а получается на первой итерации х^2, на второй - х^3 и т.д., т.е. как раз x^(n+1).
Все же лучше упрощать формулу, как это возможно, а не считать в лоб, возводя на каждой итерации x в какую-либо степень.
Как я уже говорил, не может быть бесконечного цикла, т.е. должно быть условие, по которому цикл остановится.
В данном коде таких условий два:
1) Как только две соседних суммы станут различаться менее чем на eps
2) Если произведено сложение maxiter элементов суммы

Если взять ряд, который расходится, например сумма x^n:
x+x^2+x^3+... , где x>1
Очевидно, что такая сумма бесконечно растет, и условие выхода по eps не подходит
Если же взять, например, 1/x+1/x^2+... , т.е. сумму x^(-n), то эта сумма имеет предел, к которому сходится, т.е. каждый последующий элемент меньше предыдущего, тогда произойдет выход по условию eps (скорее всего).
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума
Старый 01.11.2012, 07:56   #36
Paster Fob
Форумчанин
 
Аватар для Paster Fob
 
Регистрация: 06.02.2011
Сообщений: 105
По умолчанию

Здравствуйте.Часто вижу такие задания например:
"дана упорядоченная последовательность по невозрастанию" и т.п.
Что это значит?Может быть по убыванию?
Paster Fob вне форума
Старый 01.11.2012, 09:27   #37
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Paster Fob
Здравствуйте.Часто вижу такие задания например:
"дана упорядоченная последовательность по невозрастанию" и т.п.
Что это значит?Может быть по убыванию?
всё просто. невозрастающая, это когда каждый следующий член последовательности меньше или равен предыдущему, а убывающая - каждый следущий строго меньше...
вот и вся разница..

только я не понял, из какого поста данной темы возник этот вопрос?!
Serge_Bliznykov вне форума
Старый 05.11.2012, 07:56   #38
Paster Fob
Форумчанин
 
Аватар для Paster Fob
 
Регистрация: 06.02.2011
Сообщений: 105
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
только я не понял, из какого поста данной темы возник этот вопрос?!
Это не из этой темы,просто попадается часто такое,я даже и не знал что такое слово есть.
Спасибо за ответ.

Последний раз редактировалось Paster Fob; 05.11.2012 в 08:00.
Paster Fob вне форума
Старый 05.11.2012, 07:59   #39
Paster Fob
Форумчанин
 
Аватар для Paster Fob
 
Регистрация: 06.02.2011
Сообщений: 105
По умолчанию

Может кто подскажет как решить таку задачу?

Цитата:
На плоскости даны 2 точки А(x;y), B(x;y). Составьте программу, определяющую, принадлежит ли заданная точка Z(x;y) множеству точек, расcтояние от которых до точек А и В относится как m к n
я даже смысла задачи не понял.
Paster Fob вне форума
Старый 05.11.2012, 12:10   #40
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

См. Рисунок

Тоесть что нам надо?
Надо высчитать расстояние от A до Z, от Z до B.
И если m / n = A до Z / Z до B, то YES


Теперь вопрос : как найти расстояние?
Если Вы хорошо учились в школе, то наверняка помните эти формулы (9 класс). Всё равно их напишу : AB = Корень из ((x2-x1)^2 + (y2-y1)^2)

Вот наверное и всё...
Изображения
Тип файла: jpg 1.jpg (26.2 Кб, 134 просмотров)
Poma][a вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
КТО МОЖЕТ ПОДСКАЗАТЬ??? Demon380 PHP 2 10.03.2012 12:13
Прошу помочь, подсказать. semushka Свободное общение 2 11.01.2012 10:48
Подсказать в C++ с указателями Сайын Помощь студентам 3 23.05.2011 13:45
распознать язык и подсказать программу mcxruschow Помощь студентам 5 26.05.2010 00:09
прошу подсказать в создании отчета Ulan Microsoft Office Access 6 12.07.2008 00:51