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

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

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

 
 Ответить  Открыть новую тему 
> символьный тип
сообщение
Сообщение #1


Гость






Дана непустая последовательность неотрицательных целых чисел, записанных в семиричной системе счисления, между соседними числами -пробел, за последним -точка. Определить наибольшее из них и вывести его в десятичной системе счисления. Найдите, пожалуйста, ошибку:

program maximum (input, output);
var c: char; n0, max, k: integer;
begin
n0:=0;
max:=0;
repeat
read( с );
if c<>' ' then
begin
k:=0
repeat
k:=7*k+ord( c )-n0;
read( c ) until c=' ';
if k>max then max:=k
end
else read( c )
until c='.';
writeln(max)
end.

код не хочет работать...совсем...ааа.... :molitva:
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






dummy, почти верно, но для того, чтобы не нужно было после каждого символа нажимать Enter все-таки пользуйся ReadKey + Write (смотри в программе)... Ну и добавил ограничение на вводимые символы (если система с основанием 7, то чисел больше 6 быть не может в принципе...)
program maximum (input, output);
uses crt;

var
c: char;
max, k: integer;

begin
max:=0;
repeat
c := readkey; write( c );
if c <> ' ' then begin

k := 0;
repeat

k := 7*k + ord( c )-ord('0');
repeat
c := readkey;
until c in ['0' .. '6', ' ', '.'];
write( c );

until c in [' ', '.'];
if k > max then max:=k

end
else read( c )

until c='.';

writeln;
writeln(max)
end.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






Спасибо огромное!!!
Readkey тольк пока нам использовать нельзя, но с основной идеей проги Вы меня успокоили...
 К началу страницы 
+ Ответить 

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

 





- Текстовая версия 1.09.2025 22:04
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name