Пятница, 24.01.2025
Pascal 4 All
[ · Новые сообщения · Участники · Правила форума · Поиск · RSS ]

 

  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: Seqular, Pavel  

Конкурсная задача: Перевод из десятичного в двоичное
SeqularДата: Понедельник, 17.11.2008, 23:30 | Сообщение # 1
Хранитель
Группа: Администраторы
Сообщений: 859
Репутация: 35
Статус: Offline
Обсуждаем конкурсную задачу. Какие мысли будут? Например к входному параметру предъявлено требование от 0 до 65535. Т.е. тип Word самое то. А возвращаемое значение: String. И не просто String, а String[16] что позволяет сэкономить 255-16=239 байт памяти smile

Поддерживаю также проект сообщество молодых сисадминов
 
AlexanderДата: Вторник, 18.11.2008, 00:54 | Сообщение # 2
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
Quote (Seqular)
тип Word самое то

wtf? тип real. И почему только в двоичную?


Скажем дружно- нафиг нужно!
 
SeqularДата: Вторник, 18.11.2008, 06:12 | Сообщение # 3
Хранитель
Группа: Администраторы
Сообщений: 859
Репутация: 35
Статус: Offline
Alexander, Почему почему? Почему задание такое? Потому что алгоритм нужный! Вот пусть его на конкурсной основе "вылижут" донельзя, чтобы ничего лишнего в нем не было. smile А зачем нам Real? Перевод целого числа.. Дробное - там вообще геммор тот еще.

Поддерживаю также проект сообщество молодых сисадминов
 
AlexanderДата: Вторник, 18.11.2008, 06:29 | Сообщение # 4
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
Quote (Seqular)
Вот пусть его на конкурсной основе "вылижут" донельзя, чтобы ничего лишнего в нем не было.

Если не секрет, то на кого такие надежды? surprised
Quote (Seqular)
Дробное - там вообще геммор тот еще.

эмм... В таком случае целую часть переводить тоже гемор, алгоритм-то практически один и тот же.


Скажем дружно- нафиг нужно!
 
SeqularДата: Вторник, 18.11.2008, 06:43 | Сообщение # 5
Хранитель
Группа: Администраторы
Сообщений: 859
Репутация: 35
Статус: Offline
Quote (Alexander)
Если не секрет, то на кого такие надежды?

Вдруг случится чудо?

Quote (Alexander)
В таком случае целую часть переводить тоже гемор, алгоритм-то практически один и тот же

Для начала бы такое сделать. smile


Поддерживаю также проект сообщество молодых сисадминов
 
Van_der_VlaadДата: Вторник, 18.11.2008, 20:58 | Сообщение # 6
Старый знакомый
Группа: Пользователи
Сообщений: 35
Репутация: 1
Замечания: 0%
Статус: Offline
Ну что ж. Начнем. Предлагаю для начала вспомнить (и желательно запостить, чтоб было перед глазами) алгоритм перевода из десятичной в двоичной.
Затем приблизительно продумать алгоритм решения задачи. А потом уже можем начинать делать все это в Паскале
 
SeqularДата: Вторник, 18.11.2008, 21:13 | Сообщение # 7
Хранитель
Группа: Администраторы
Сообщений: 859
Репутация: 35
Статус: Offline
Van_der_Vlaad, Ну как запостить... Переводится делением.
Делим число X на 2 до тех пор, пока X не станет равен < 2. Потом остатки переписываем в обратном порядке. Ну в конце не забудем 1-цу дописать. Это и будет двоичная запись..


Поддерживаю также проект сообщество молодых сисадминов
 
AlexanderДата: Вторник, 18.11.2008, 23:11 | Сообщение # 8
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
Ну если это конкурс, то алгоритм каждый должен придумывать сам.

Скажем дружно- нафиг нужно!
 
Van_der_VlaadДата: Среда, 19.11.2008, 21:28 | Сообщение # 9
Старый знакомый
Группа: Пользователи
Сообщений: 35
Репутация: 1
Замечания: 0%
Статус: Offline
да ладно тебе Alexander, нужно думать теперь как это в паскале оформитть, хотя как мне кажется не так уж это будет и трудно...но не так уж и легко

Добавлено (19.11.2008, 14:28)
---------------------------------------------
ммм...использовать деление mod 2, остаток добавлять в массив. а потом считать с массива в обратном напрвлении. единственная сложность пока в моем понимании-это организация деления

 
YuraДата: Суббота, 22.11.2008, 23:12 | Сообщение # 10
Новичок
Группа: Пользователи
Сообщений: 2
Репутация: 0
Замечания: 0%
Статус: Offline
Code

uses
    crt;
var
    x:word;

function DecToBin(const y:word) : string;
var
    x:word;
    str1,str2:string[16];
begin
    x:=y;
    str1:='';
    if x=0 then DecToBin:='0';
    while (x<>0) do
      begin
        str(x mod 2, str2);
        str1:=str2+str1;
        x := x div 2;
      end;
    DecToBin:=str1;
end;

begin
    clrscr;

    write('vvedite x = ');
    readln(x);

    writeln(DecToBin(x));

    readkey;
end.


Сообщение отредактировал Yura - Воскресенье, 23.11.2008, 05:29
 
SeqularДата: Суббота, 22.11.2008, 23:17 | Сообщение # 11
Хранитель
Группа: Администраторы
Сообщений: 859
Репутация: 35
Статус: Offline
Yura, Входной параметр 0, прога не работает smile

Поддерживаю также проект сообщество молодых сисадминов
 
YuraДата: Воскресенье, 23.11.2008, 05:30 | Сообщение # 12
Новичок
Группа: Пользователи
Сообщений: 2
Репутация: 0
Замечания: 0%
Статус: Offline
дополнил
 
SeqularДата: Воскресенье, 23.11.2008, 09:22 | Сообщение # 13
Хранитель
Группа: Администраторы
Сообщений: 859
Репутация: 35
Статус: Offline
Погляди, для чего нам нужна str2. Какие значения может принимать. И какго размера она объявлена.

Поддерживаю также проект сообщество молодых сисадминов
 
SeqularДата: Воскресенье, 23.11.2008, 09:24 | Сообщение # 14
Хранитель
Группа: Администраторы
Сообщений: 859
Репутация: 35
Статус: Offline
Кстати, если аргумент развен 1, то в цикл заходить и находить остаток, потом преобразовывать в строку - тоже не надо. Можно как с 0-лем поступить и просто вывести его же.

Поддерживаю также проект сообщество молодых сисадминов
 
AlexanderДата: Воскресенье, 23.11.2008, 22:14 | Сообщение # 15
Всевышний
Группа: Модераторы
Сообщений: 475
Репутация: 16
Замечания: 0%
Статус: Offline
Для конкурса нужно:
1) составить список участников.
2) определится с правилами и сроками.
3) определиться с критериями оценки программ.
4) задачи должны быть не настолько банальными, когда алгоритм есть почти на любом сайте(включая этот), нормальный конкурс не получится.
Поэтому предлагаю объявить единственного участника победителем и попробовать провести нормальный конкурс или пока забыть об этой затее.


Скажем дружно- нафиг нужно!

Сообщение отредактировал Alexander - Воскресенье, 23.11.2008, 22:14
 
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Copyright MyCorp © 2025
Используются технологии uCoz
javascript:;" rel="nofollow" onclick="loginPopupForm(); return false;