1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
| Flipper |
16.10.2004 20:07
Сообщение
#1
|
|
Гость |
задание: написать программу на языке паскаль, чтобы она переводила число из четверичной системы счиления в шестнадцетиричную с.с.
вот собственно что надо.......... ПОЖАЛУЙСТО, HELP |
![]() ![]() |
| Amro |
19.10.2004 19:59
Сообщение
#2
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 146 Пол: Мужской Репутация: 2 |
Вот тута прогу одну нашёл, правда ещё сам не разобрался, но по-моему она переводит из любой системы счисления в любую другую ....... в общем универсальная она
Код program perevod; var q,p,n,osnov,s,m,i:longint; st:string; ch:char; mas:array[1..30] of byte; function test(st:string; osnov:integer):boolean; var n,i:integer; mn:set of char; begin test:=true; mn:=[]; for i:=0 to osnov-1 do if i<=9 then mn:=mn+[chr(i+48)] else mn:=mn+[chr(i+55)]; n:=ord(st[0]); for i:=1 to n do if (st[i]<>',') and (not(st[i] in mn)) then begin writeln('Неправильная запись числа. Повторите ввод'); test:=false; i:=n; end; end; function chislo(ch:char):integer; begin if ord(ch) in [48..57] then chislo:=ord(ch)-48 else chislo:=ord(ch)-55; end; function simvol(n:byte):char; begin if n in [10..15] then simvol:=chr(n+55) else simvol:=chr(n+48); end; begin writeln ('Введите основание р'); readln(p); writeln ('Введите число (для цифр после 9 писать ABC...)'); repeat readln (st); until test(st,p); writeln ('В какую систему перевести?'); readln (q); s:=0; m:=1; n:=ord(st[0]); for i:=n downto 1 do begin s:=s+chislo(st[i])*m; m:=m*p; end; m:=0; repeat inc(m); mas[m]:=s mod q; s:=s div q; until s<=q-1; inc(m); mas[m]:=s; for i:=m downto 1 do write(simvol(mas[i])); end. Прикольная между прочим прога, вроде всё прально делает!!!! Внимание всем, кто еще раз решит, что эта программа работает с любыми системами счисления!!! Программа корректно переводит числа из любой системы счисления с основанием 2 .. 16 в любую систему счисления с основанием 2 .. 16 !!! Не более того. НЕ считайте эту программу действительно универсальным переводчиком, и не ждите от нее корректной работы с другими системами счисления!!! Сообщение отредактировано: volvo - 15.12.2005 12:48 -------------------- Закон иудеев: Семь раз отмерь, один отрежь.
Закон экономии: Семь раз отмерь, семь раз отрежь. Закон программиста: Семь раз отрежь, ошибся, отмерь. |
Flipper задача на системы счисления 16.10.2004 20:07
Altair один из способов (простых) это перевести сначала в... 16.10.2004 20:16
Flipper спасибо,
sorry, вспылил, был не прав. 16.10.2004 21:57
Altair То-то же! :yes: 17.10.2004 8:04
--Vika-- Привет, всем!
клево, нам тоже самое задали, за... 18.10.2004 14:40
Atos Число - это n, а radix- это какая с/c
Например выз... 18.10.2004 14:48
--Vika-- digit: string[16]='0123456789ABCDEF' а это... 18.10.2004 14:55
Altair тут реагируютна все вопросы! так что заходите ... 18.10.2004 16:40
FreeMan
своим подругам :D 18.10.2004 16:56
Altair Это прежде всего, девушкам тут особенно рады, и за... 18.10.2004 17:07
GoodWind
угу.... очеень... особенно я :D
Зватит флеймить... 18.10.2004 19:23
--Vika-- ребята, не получилось....еще мне сказали чтоб дела... 19.10.2004 9:55
Altair Так, а задание дайте. 19.10.2004 10:00
--Vika-- задание тоже самое :huh:
программа на паскале, п... 19.10.2004 10:29
APAL И у меня есть попутный вопрос - ведь наверняка дол... 19.10.2004 10:43
volvo --Vika--
Только что проверил программу Oleg_Z. Вс... 19.10.2004 12:05
Altair На нашем форум, все, что выложенно в ЧаВо, все раб... 19.10.2004 13:42
volvo Принцип остается тот же -
здесь...
for i:=n... 19.10.2004 20:07
GoodWind
завтра ОМТ`шницу нашу спрошу 19.10.2004 20:25
Dao Я мож и опоздал, но в том году писал прогу, котора... 19.10.2004 20:31
Altair Опоздал во-первых, во-вторых слишком однобокая про... 20.10.2004 6:12
Dao Полностью с тобой согласен, но 5 у меня уже сотит,... 20.10.2004 18:19
Altair Точно! 20.10.2004 18:32
Vika
вот, перевод числа из любой с/с в 10. не делением... 22.10.2004 9:15
Altair Не понял, что тебе не нравиться? 22.10.2004 15:30
aspu А вот я что-то не пойму та прога универсальная на ... 26.09.2005 13:52
Jill ребята, а если ПРОСТО десятичное (и положительное,... 26.09.2005 14:20
aspu У тебя не проблема :) При переводе между системами... 26.09.2005 15:38
Jill как это?
по-моему, там происходят изменения в ста... 26.09.2005 15:43
aspu A черт его знает в одних источниках одно написано ... 27.09.2005 8:48
Jill
калькулятор не обрабатывает отр. числа :-)
чтоб ... 27.09.2005 10:29
aspu ну вот и меняй :) Переведи его в строковый вид и п... 27.09.2005 10:49
Гость Помогите пожалуйста модифицировать программу перев... 25.09.2007 10:40![]() ![]() |
|
Текстовая версия | 8.12.2025 20:02 |