hamchuk250894
Новые
- Регистрация
- 9 Дек 2012
- Сообщения
- 45
- Реакции
- 0
- Баллы
- 0
Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: Эта возможность может быть недоступна в некоторых браузерах.
Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.
Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.
Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.
Получите:да, именно так
Var
S,S1:String;
A:Array [1..255] of Word;
i,j,N:Byte;
Code:Integer;
Max,SubMax:Word;
b:boolean;
Begin
Writeln('Enter the string:');
Readln(S);
N:=0;
i:=0;
Repeat
repeat
Inc(i);
until ((Ord(S[i])>47) and (Ord(S[i])<58)) or (i>=Length(S));
If i<Length(S) then
begin
Inc(N);
S1:='';
S1:=S1+S[i];
repeat
Inc(i);
if (Ord(S[i])>47) and (Ord(S[i])<58) then S1:=S1+S[i];
until (Ord(S[i])<48) or (Ord(S[i])>57) or (i>=Length(S));
Val(S1,A[N],Code);
end;
Until i>=Length(S);
Max:=A[1];
For i:=2 to N do
If A[i]>Max then Max:=A[i];
Repeat
b:=true;
Dec(Max);
for j:=1 to N do
if Max=A[j] then b:=false;
Until b;
Writeln('Result: ',Max);
Readln;
End.
Да пожалуйста. Единственно, предупреждаю: я ограничился целыми положительными числами, потому как обрабатывать знаки да разделительные точки уж очень муторно.спасибо большое.
Виноват. Даже не понимаю, как ошибка проскочила: ведь тестировал же... Значит, так:Владимир, программка немного неверно работает. Допустим я ввожу строку: 10с11а12g и он мне ответ выдает 11, а должно быть 9. И даже допустим введем строку: 10с11f он ответ выдает 10. Если не сложно исправьте пожалуйста.
Подробнее, пожалуйста. Количество цифр в числах в программе не регламентируется, числа могут быть и однозначные, если Вы об этом.А что если нужно определить не число, а цифру?
наибольшее число, не входящее в строку от 0 до 9
Var
S:String;
A:Array [1..255] of Byte;
i,j,N:Byte;
Code:Integer;
Max:Byte;
b:boolean;
Begin
Writeln('Enter the string:');
Readln(S);
N:=0;
i:=0;
Repeat
repeat
Inc(i);
until ((Ord(S[i])>47) and (Ord(S[i])<58)) or (i>=Length(S));
If i<=Length(S) then
begin
Inc(N);
Val(S[i],A[N],Code);
end;
Until i>=Length(S);
Max:=A[1];
For i:=2 to N do
If A[i]>Max then Max:=A[i];
Repeat
b:=true;
Dec(Max);
for j:=1 to N do
if Max=A[j] then b:=false;
Until b or (Max=0);
If b then
Writeln('Result: ',Max)
else
Writeln('No such figure');
Readln;
End.