|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Помогите оптимизировать и улучшить стиль программ
Уважаемые программисты, помогите пожалуйста оптимизировать программы (их две), и улучшить ее стиль (работают ли они вообще?). Задали в колледже, а я полный 0 в этом. Буду очень благодарен если мне кто-нибудь поможет!
№1 Код:
var a, b, i, x^ integer; begin readln(x); a:=x; b:=1; while a <>0 do begin b:=b*10; if a mod 10=0 then begin a:=a+9; i:=(x mod(b*10)); x:=(x mod b)+(a*(b div 10)); end; a:=a div 10; end; writeln(x); end. №2 Код:
var q,w,e,r,t:string; z,x,c,v:integer; begin readln(q); z:=length(q); c:=2; v:=1; for x:=1 to z do begin w:=copy(q,v,1); insert(w,q,c); v:=v+2; c:=v+1; end; writeln(q); end. Последний раз редактировалось Admin, 01.10.2012 в 20:24. |
#2
|
|||
|
|||
Напишите задание, что должны дедать программы?
|
#3
|
|||
|
|||
№2
ввести строку. "задвоить" каждый символ строки. задание первой узнаю завтра, за ранее благодарю! |
#4
|
||||
|
||||
Цитата:
Код:
var S1, S2: string; i: integer; begin Readln(S1); SetLength(S2, Length(S1) * 2); for i := 1 to Length(S1) do begin S2[i * 2 - 1] := S1[i]; S2[i * 2] := S1[i]; end; Writeln(S2); end. |
#5
|
|||
|
|||
Мой вариант:
Код:
var S1, S2: string; i: integer; begin Readln(S1); S2 := ''; for I := 1 to Length(S1) do S2 := S2 + S1[i] + S1[i]; Writeln(S2); end. Для первой задачи нужно задание. Если все нули заменть на 9, то вариант через строку (Delphi): Код:
var S : String; begin ReadLn(S); WriteLn(StringReplace(S,'0','9',[rfReplaceAll])); end. Вариант с целыми числами: Код:
var N, M, P, X : Integer; begin ReadLn(N); M := 0; P := 1; While N <> 0 Do Begin X := N mod 10; If X = 0 Then M := M + P * 9 Else M := M + P * X; P := P * 10; N := N div 10; End; WriteLn(M); end. |
#6
|
|||
|
|||
огромное спасибо всем!!! вы мне очень помогли!!!!!
|