![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
JOKER |
![]()
Сообщение
#1
|
Гость ![]() |
Задали нам такую задачку "Используя только литерный ввод, ввести вещественное число, записаное в виде: d.ddE-d,
и присвоить его вещественной переменной У" ответ нужен до завтра мне в обед уходить ответьти плиз желательно исходником и пояснениями я в долгу не останусь пиво обещаю поставить первому давшему конструктивный ответ но не пойже чем завтра до абеда (к сведению время +5 от гринвича) |
![]() ![]() |
virt |
![]()
Сообщение
#2
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 419 Пол: Мужской Репутация: ![]() ![]() ![]() |
Код var ch : char; r : real; i : integer; ...................... read(ch); r := ord(ch) - ord('0'); read(ch); read(ch); r := r * 10 + ord(ch) - ord('0'); read(ch); r := r * 10 + ord(ch) - ord('0'); r := r / 100; read(ch); read(ch); readln(ch); i := ord(ch) - ord('0'); while i > 0 do begin r := r / 10; i := i - 1; end; writeln(r:0:11); -------------------- |
kent |
![]()
Сообщение
#3
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 50 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Другой вариант:
uses Crt;
var lit : Char;
y : Real;
S : String;
code,count : Integer;
point : Integer;
begin
Clrscr;
S := '';
count := 0;
point := 0;
repeat
Write('Введите символ:');
ReadLn(lit);
if not (lit in ['0'..'9','.','-','+','E']) then begin
WriteLn('Error');
Halt;
end;
if (lit = '.') then
inc(point);
S := S + lit;
if (point = 1) then
if (lit = '-') or (lit = '+') then
inc(count)
else if (count > 0) then
inc(count);
until count = 5;
Val(S,y,code);
WriteLn('Полученное число: ',y);
ReadKey;
end.
|
Joker |
![]() ![]()
Сообщение
#4
|
Гость ![]() |
большое спасибо как теперь с вами связаться надо же всё таки пиво поставить за помощь putnik-13#@narod.ru(please remove # and sand me письма) :thanks: :flowers: :yes: :low: ;)
|
![]() ![]() |
![]() |
Текстовая версия | 24.07.2025 15:47 |