Переведите код с Pascal на QBasic
Формулировка задачи:
Листинг программы
- Program z1;
- Var
- S:String;
- k,p:integer;
- BEGIN
- Write ('введите исходную строку:'); Readln(S);
- While Pos('i',S)>0 Do
- Begin
- p:=pos('i',s); Delete (S,Pos('i',S),1);
- Insert ('info',S,p);
- End;
- Writeln('Получилась строка ',S);
- End.
Решение задачи: «Переведите код с Pascal на QBasic»
textual
Листинг программы
- DIM s AS STRING
- DIM s1 AS STRING
- DIM s2 AS STRING
- DIM k AS INTEGER
- DIM p AS INTEGER
- CLS
- INPUT "STROKA = "; s
- s = " " + s + " "
- k = 1
- DO
- p = INSTR(k, s, "i")
- IF p > 0 THEN
- s1 = LEFT$(s, p - 1)
- s2 = RIGHT$(s, LEN(s) - p)
- s = s1 + "info" + s2
- k = p + 1
- ELSE
- EXIT DO
- END IF
- LOOP
- s = TRIM$(s)
- PRINT s
- END
Объяснение кода листинга программы
- Задаются переменные: s, s1, s2, k, p
- Ввод строки от пользователя:
INPUT
STROKA =
; s - Формирование новой строки:
s =
` + s +
` - Цикл до тех пор, пока не будет найдено первое вхождение
i
: p = INSTR(k, s,i
) Если p больше 0: Формирование новых строк: s1 = LEFT$(s, p - 1) s2 = RIGHT$(s, LEN(s) - p) Формирование новой строки: s = s1 +info
+ s2 Увеличение k на p + 1 Иначе: Цикл прекращается - Удаление лишних пробелов: s = TRIM$(s)
- Вывод строки на экран: PRINT s
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д