Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?
Гродненский Форум
12 Май 2024, 21:16:15
Новости, реклама:
   Главная   Новости Гродно Помощь Игры Календарь Войти Регистрация   Меню
Гродненский Форум > Компьютеры > Программирование
(Модераторы: Админ, barmalei) > Тема:

Re: PASCAL RULEZZzzz

Страниц  : 1  Все   Вниз
  Печать  
Автор Тема: Re: PASCAL RULEZZzzz  (Прочитано 7477 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Toreador
Гродненец
**

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

Пол: Мужской
Сообщений: 226


mode move move

Просмотр профиля WWW
« Ответ #30 : 28 Ноябрь 2006, 19:26:23 »

Да ну её.......
У меня всё считает по задаче и это круто........
хм....
а как на счёт графов? Строит глазки
Записан

+++++++++++++++++++++++++++++
Hackett
Почетный гродненец
*****

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

Пол: Мужской
Сообщений: 1920


Rock On!

Просмотр профиля
« Ответ #31 : 29 Ноябрь 2006, 09:45:05 »

Народ, небольшой вопросик: как задать random в области [a,b], где a и b любые числа???
Записан

DeGree
Гродненец
**

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

Пол: Мужской
Сообщений: 228


... it's me ...

Просмотр профиля WWW
« Ответ #32 : 29 Ноябрь 2006, 10:34:54 »

Цитировать
Народ, небольшой вопросик: как задать random в области [a,b], где a и b любые числа???
RandomNumber:=a+(b-a)*random;
Записан

... nothing else matters ...(Metallica)
Hackett
Почетный гродненец
*****

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

Пол: Мужской
Сообщений: 1920


Rock On!

Просмотр профиля
« Ответ #33 : 29 Ноябрь 2006, 11:03:36 »

Спасибо, но мне показали: RandomNumber:=random(b-a+1)+a .
Записан

TlGRA
Я видел Маслякова!
Настоящий гродненец
****

Репутация: +34/-2
Offline Offline

Пол: Мужской
Сообщений: 387


Просмотр профиля
« Ответ #34 : 29 Ноябрь 2006, 11:18:05 »

Hacket, тебе правильно подсказали.Верь Витольдовичу!
Записан
H.A.M.
Гродненец
**

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

Пол: Мужской
Сообщений: 219


I love money and dollars

Просмотр профиля
« Ответ #35 : 30 Ноябрь 2006, 04:27:36 »

Пилять аптимайзеры туевы паминяйте % на /, мод на див а потом тестите
Записан

DeGree
Гродненец
**

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

Пол: Мужской
Сообщений: 228


... it's me ...

Просмотр профиля WWW
« Ответ #36 : 01 Декабрь 2006, 13:03:59 »

Цитировать
Спасибо, но мне показали: RandomNumber:=random(b-a+1)+a .
Цитировать
Hacket, тебе правильно подсказали.Верь Витольдовичу!
random выдает в диапазоне [0, 1), т.е. где-то [0, ~0.9999], давайте пример рассмотрим
a=1, b=2
получаем, что возвращается [1, ~2.9998] ~ [1, ~3], а не как заказывали [1, 2]...
поэтому прально
Код:
RandomNumber:=a+(b-a)*random;
тут ближе --- [1, ~1.9998] ~ [1, 2]

Или я не прав?
« Последнее редактирование: 01 Декабрь 2006, 13:06:21 от DeGree » Записан

... nothing else matters ...(Metallica)
Hackett
Почетный гродненец
*****

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

Пол: Мужской
Сообщений: 1920


Rock On!

Просмотр профиля
« Ответ #37 : 03 Декабрь 2006, 09:22:42 »

У меня вся прога была построена на целочисленных значениях и твой вариант не подходил(выдавало ошибку о попытке присвоения типа Double).
Записан

Toreador
Гродненец
**

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

Пол: Мужской
Сообщений: 226


mode move move

Просмотр профиля WWW
« Ответ #38 : 07 Декабрь 2006, 23:11:37 »

У кого-нить есть прикольные задачки?.... Злой
Записан

+++++++++++++++++++++++++++++
alexin
Новенький


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

Сообщений: 6


Мяу

Просмотр профиля Email
« Ответ #39 : 09 Декабрь 2006, 04:43:12 »

Блин парень походу токо учится вы его уже с головы до ног помоями окатили.....
Dum spiro spero если можно объясни не допонимаю как твоя прога работает

       System.out.println(n);
       System.out.println("Started at ->"+new Date());
       ArrayList primes= new ArrayList();
       primes.add(new Integer(3));
       int i_sqrt;
       int k=0;
        Integer subList[]=null;
       loop:for (int i=5 ; i < n ; i += 2)
       {
 
           i_sqrt=(int)Math.sqrt(i);
           if (((Integer)primes.get(k)).intValue()<=(i_sqrt))
           {
            k++;
            subList = (Integer[])primes.subList(0,k).toArray(new Integer[k]);
           }
 
           for (int j = 0; j< k ;j++)
           {
               if (i%(subList[j]).intValue()==0)
               {
                   continue loop;
               }
           }
                       primes.add(new Integer(i));
       }
 
       System.out.println("Finish time ->"+new Date());
       System.out.println(primes.size());        
       }
заранее спасибо  Улыбка
Записан
X-Penguin
Настоящий гродненец
****

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

Сообщений: 469


Просмотр профиля
« Ответ #40 : 09 Декабрь 2006, 14:16:11 »

Цитировать
чтото java
ни**я ни pascal
 нет я конечно неопытный всего полгода втравливают яву в универе
но чтото мне подсказывает...
заканчиваем личную переписку - буду штрафовать
Записан
VooDoo
Почетный гродненец
*****

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

Пол: Мужской
Сообщений: 2885


Dum spiro spero

Просмотр профиля WWW Email
« Ответ #41 : 09 Декабрь 2006, 22:30:50 »

Цитировать
Dum spiro spero
это всего лишь подпись...

дык там же всего лишь 2 фора и вроде всё понятно... Говори свои варианты, а я буду говорить прав ты или нет:)
Записан

Are you human? - My body is.
Do you feel pain? - My body does.
..- --- --- -.. --- ---
Toreador
Гродненец
**

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

Пол: Мужской
Сообщений: 226


mode move move

Просмотр профиля WWW
« Ответ #42 : 24 Декабрь 2006, 18:32:53 »

Пишите задачки или алгоритмы!..... Программеры, где вы? :-? Шокирован
Записан

+++++++++++++++++++++++++++++
VooDoo
Почетный гродненец
*****

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

Пол: Мужской
Сообщений: 2885


Dum spiro spero

Просмотр профиля WWW Email
« Ответ #43 : 24 Декабрь 2006, 22:03:57 »

эээххх времени нету, задачи всякие писать. Только если старенькое что-нить вспомнить. Вот например: есть выражение что-нить типа (3*(4*x+24)+45*y)/z. Из этого надо построить граф операций:
                             "/"
                          /       \
                         +        z
                      /      \
                    *        *
                  /  \       / \
                 3   +    45  y
                    /   \
                   *    24
                  /  \
                 4    x

Записан

Are you human? - My body is.
Do you feel pain? - My body does.
..- --- --- -.. --- ---
H.A.M.
Гродненец
**

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

Пол: Мужской
Сообщений: 219


I love money and dollars

Просмотр профиля
« Ответ #44 : 25 Декабрь 2006, 04:00:42 »

Цитировать
ите задачки или алгоритмы!..... Программеры, где вы?  
пасчитай Улыбка
12389476290495781335236457867978907897476589748957230948577858
Записан

DeleteR
Почетный гродненец
*****

Репутация: +125/-7
Offline Offline

Пол: Мужской
Сообщений: 1871

Просмотр профиля
« Ответ #45 : 28 Декабрь 2006, 10:42:45 »

Цитировать
пасчитай Улыбка
12389476290495781335236457867978907897476589748957230948577858

Оооо, ну это к госпоже Просвирниной И. Б., преподавателю ФакМИ ГрГУ!!! Улыбка У нее это хорошо получается. 4 курс программеров поймет это весной! Подмигивающий
Записан
maxposedon
Настоящий гродненец
****

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

Сообщений: 696


empty

Просмотр профиля
« Ответ #46 : 28 Декабрь 2006, 15:23:40 »

Цитировать
пасчитай Улыбка
12389476290495781335236457867978907897476589748957230948577858

а филе тут считать?
последняя цифра  в ответе - 4,
все остальные цифры скажу за денежку...

считайте/провряйте Улыбка
Записан
DIAMENT in ban
Гродненец
**

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

Пол: Мужской
Сообщений: 73


Просмотр профиля WWW
« Ответ #47 : 29 Декабрь 2006, 19:05:30 »

Извиняюсь что перебиваю. Какая разница между Borland Pascal, Turbo Pascal, Free Pascal и.т.д. ?
Записан

"Jestem jak żołnierz na wszystko gotowy. I jak w Ojczyźnie, tak i w obcym kraju..."
maxposedon
Настоящий гродненец
****

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

Сообщений: 696


empty

Просмотр профиля
« Ответ #48 : 04 Январь 2007, 10:36:27 »

Deus6666, напиши, тут 5min работы...

написать ничего не мешает в повседневной жизни
вон Vodoo же спокойно написал на Java, но ко-о-о-д получился "мама дорогая" ...

и вообще, пишу на том, что лучше знаю Улыбка
Записан
VooDoo
Почетный гродненец
*****

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

Пол: Мужской
Сообщений: 2885


Dum spiro spero

Просмотр профиля WWW Email
« Ответ #49 : 04 Январь 2007, 11:37:49 »

 Подмигивающий сам алгоритм проще кодается
Записан

Are you human? - My body is.
Do you feel pain? - My body does.
..- --- --- -.. --- ---
maxposedon
Настоящий гродненец
****

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

Сообщений: 696


empty

Просмотр профиля
« Ответ #50 : 05 Январь 2007, 11:17:43 »

Цитировать
Запросто, давай псведо-код, либо диаграму, либо описание. Я этого алгоритма не знаю.

primes - массив простых чисел

primes := [2]
for i from 3 to N step 2
   begin
       prostoe = true
       for j from 0 to primes.size
       begin
            sqrt_i = sqrt(i)+1
            if i%primes[j] = 0 then
            begin
                 prostoe = false
                 break
           end
           if primes[j] > sqrt(i) then break
       end
       if prostoe then primes << i
 end



и вообще тут были приведены коды
на C++/Ruby/Java, неужели разобраться в коде так сложно? или так поленился? Улыбка
« Последнее редактирование: 05 Январь 2007, 11:28:00 от maxposedon » Записан
maxposedon
Настоящий гродненец
****

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

Сообщений: 696


empty

Просмотр профиля
« Ответ #51 : 05 Январь 2007, 12:39:39 »

ну... сравнивать читабельность кода я не буду, каждый может сам сравнить Улыбка
но в глаза бросаются некоторые странные вещи

1. работа с массивами...
if High(Primes) <= TopInt then
   SetLength(Primes, Length(Primes) + 1000);  
(если я правильно понял код, тут должен быть что-то такое)
"если массива нехвататает, увеличить его на 1000 элементов"
но! что такое High(Primes)Непонимающий
оно эквивалетно Length(Primes) чтоли?..
и вообще length/setlength механизм это танцы с бубнами (имхо)

2. да-да вот именно этим всех Pascal и бесит
заведением переменных для работы с сущностями,
2.1 хочешь массив - вот тебе к нему ещё щётчик Улыбка
2.2 хочешь немного необычный for, всё.. получи while (хорошо что не if и goto)

3. а что кампилятор до сих пор не научился генерировать код одинаковый для
inc(i,2) и i := i+2? или считается, что inc форма более читаемая ?Улыбка

P.S. будет время посмотри, как твой код работает при n=100_000_000 и n=10_000_000
« Последнее редактирование: 05 Январь 2007, 12:40:50 от maxposedon » Записан
maxposedon
Настоящий гродненец
****

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

Сообщений: 696


empty

Просмотр профиля
« Ответ #52 : 05 Январь 2007, 16:26:14 »

length/setlegth - я знаю зачем, но мне не нравицца, что сам язык этим перегружен
просто перво-очередной параметр - читаемость кода (имхо)
все оптимизации и прочие вторичны, с pascal мне не нравицца именно читаемостью
и я хочу для похожих вещей, похожий код...
и конечно без велосипедов Улыбка
Записан
VeDbMo4ka
Почетный гродненец
*****

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

Пол: Женский
Сообщений: 1581


готовлюсь к взлету... вжжжж...вжжж... )

S Просмотр профиля
« Ответ #53 : 15 Январь 2007, 03:36:55 »

Помогите бедной девушке решить задачку:
Даны  действительное число а, нат. число n. Вычислить a(a+1)...(a+n-1). Исспользовать нужно цикл For.
« Последнее редактирование: 15 Январь 2007, 03:37:18 от Ryzhaia » Записан

coolasm
Почетный гродненец
*****

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

Пол: Мужской
Сообщений: 1458


//---------//

Просмотр профиля
« Ответ #54 : 15 Январь 2007, 12:07:38 »

var
a:real;
result:real;
n:integer;
i:integer;
begin  
readln(a);                          {считываем переменную a}
readln(n);                          {считываем переменную n}
result:=a;
for i:=1 to n-1 do
 begin
  result:=result*(a+i);        {a*(a+1)*...(a+n-1)}
 end;
writeln(result); {выводим результат}
end.

Проверять непроверял но вроде должно работать
Записан

HTTP Error 404 - File or directory not found.
Largo
Гродненец
**

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

Пол: Мужской
Сообщений: 214


Кто владеет информацией – владеет миром!

bzhenia Просмотр профиля WWW Email
« Ответ #55 : 23 Январь 2008, 20:14:38 »

Цитировать
Итак, самый классный алгоритм для нахождения простых чисел? Хм?
Пока ещё не видел круче Эратосфена(до 255)...

Program Eratosfen;
Const N = 201;
{Возможно любое значение 1 < N < 256}
Var A, B: Set of 2 .. N;
    K, P: Integer;
Begin
    { Формирование исходного множества A;
    B - искомое множество простых чисел,
    сначала - пустое)
    A := [2 .. N]; B := [ ]; P := 2;
    Repeat
        {Поиск минимального числа в множестве A}
        while Not (p in A) do p := p+1;
        {Включение нацденного числа в множество B}
        b := b + [p];
        k := p;
        {Исключение из A чисел, кратных P}
        while k<=n do
        begin
            a := a - [k];
            k := k + p;
        end
    until a = [ ];
    { Вывод результата, т.е. всех чисел из множества B
    в порядке возрастания}
    for p := 2 to n do if p in b then writeln(p)
end.

Может кто предложит круче?! Строит глазки

До 255 чисел согласен, алгоритм рулит!!!
Записан

Страниц  : 1  Все   Вверх
  Печать  
 
Перейти в:  

Войти
Войдите, чтобы добавить комментарий

Войдите через социальную сеть

Имя пользователя:
Пароль:
Продолжительность сессии (в минутах):
Запомнить:
Забыли пароль?

Контакт
Powered by MySQL Powered by PHP Мобильная версия
Powered by SMF 1.1.20
SMF © 2006-2024, Simple Machines
Simple Audio Video Embedder
| Sitemap
Valid XHTML 1.0! Valid CSS!
Страница сгенерирована за 0,195 секунд. Запросов: 19.