Форум
» Назад на решение задач по физике и термеху
Регистрация | Профиль | Войти | Забытый пароль | Присутствующие | Справка | Поиск

» Добро пожаловать, Гость: Войти | Регистрация
    Форум
    Информационные технологии
        О строках...
Отметить все сообщения как прочитанные   [ Помощь ]
» Добро пожаловать на форум "Информационные технологии" «

Переход к теме
<< Назад Вперед >>
Одна страница
Модераторы: paradise, KMA
  

Kum


Удален

Помогите, кто чем может...   
{Число а=1234 преобразовать в число b=4321}                                                                        
Program GG;                                                                  
                                                                           
Var i:byte;a,b:integer;S1,S:string;                                        
code:integer;                                                                
Begin                                                                        
                                                                             
a:=1234;                                                                      
Str(a,S);                                                                    
writeln('S=',S);                                                              
for i:=1 to length(S) do                                                    
S1:=S[length(S)+1-i];                                                    
for i:=1 to length(S1) do   {Не вычисляет длину S1. Если поставить S, то все в порядке}                                                  
write(S1);                                                                
writeln;                                                                      
writeln('L(S1)=',length(S1));                                                
Val(S1,b,code);                                                              
writeln('code=',code) ;                                                      
writeln('b=',b) ;                                                            
readln;                                                                      
end.                                                                          

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 12 марта 2005 13:00 | IP
dm


Удален

Так Вы себе представляете свободное общение?

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 12 марта 2005 14:10 | IP
VF



Administrator

Не надо нового массива. Переставлять пары чисел из первой и второй половины, используя промежуточную переменную. Делать это нужно до середины массива.

На сколько помню, в паскале строки можно присваивать непосредственно. Вместо

write(a);
writeln;

проще писать

writeln(a);

Тема перемещена сюда.

Всего сообщений: 3110 | Присоединился: май 2002 | Отправлено: 12 марта 2005 14:18 | IP
Kum


Удален

Почему созданная строка S1 не поддается функции length(S1)?
------------------------------
for i:=1 to length(S) do                                                    
S1:=S[length(S)+1-i];                                                    
for i:=1 to length(S1) do   {Не вычисляет длину S1. Если поставить S, то все в порядке}                                                  
write(S1);              

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 12 марта 2005 14:49 | IP
VF



Administrator

Размер строки в Pascal хранится в ее нулевом элементе. Наверно при посимвольной обработке он не изменяется.

Всего сообщений: 3110 | Присоединился: май 2002 | Отправлено: 14 марта 2005 12:57 | IP
Unnamed


Новичок

А зачем через строки-то делать? Гораздо проще-то при помощи div и mod:

uses crt;
var
   a,b,i: Integer;
begin
   clrscr;
   a := 1234; { или ReadLn(a);}
   b := 0;
   repeat
       b := b*10 + a mod 10;
       a := a div 10;
   until a=0;
   WriteLn(b);
   ReadLn;
end.
И все дела :-)

Всего сообщений: 44 | Присоединился: март 2005 | Отправлено: 23 марта 2005 17:42 | IP
Kum


Удален

Cпасибо Unnamed, я это знаю, вопрос чисто спортивного интереса, почему со строкой не получается? Админ здравую мысль кинул...

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 23 марта 2005 20:25 | IP

Отправка ответа:
Имя пользователя   Вы зарегистрировались?
Пароль   Забыли пароль?
Сообщение

Использование HTML запрещено

Использование IkonCode разрешено

Смайлики разрешены

Опции отправки

Добавить подпись?
Получать ответы по e-mail?
Разрешить смайлики в этом сообщении?
Просмотреть сообщение перед отправкой? Да   Нет
 

Переход к теме
<< Назад Вперед >>
Одна страница

Форум работает на скрипте © Ikonboard.com