Программирование на python ( 30 ! )
тема: работа со строками
1
вы находитесь в квест-комнате по мультфильму wall-e!
чтобы выбраться из комнаты, необходимо выполнить такие
шаги:
1. узнайте длину строки s текста и выведите
это значение в консоль.
2. выведите весь текст в нижнем регистре.
3. кто-то допустил ошибку и некорректно написал имя робота
wall-e! замените все вхождения слова walle на wall-e.
4. наконец, подсчитайте, сколько раз в тексте было исполь-
зовано слово earth.
код к 1:
s = "in a distant, but not so unrealistic, future \
where mankind has abandoned earth because it has \
become covered with trash from products sold by \
the powerful multi-national buy n large
corporation, \
walle, a garbage collecting robot has been left to \
clean up the mess. mesmerized with trinkets of
earth's \
history and show tunes, walle is alone on earth
except \
№ 7
2
for a sprightly pet cockroach. one day, eve, a
sleek \
(and dangerous) reconnaissance robot, is sent to
earth to \
find proof that life is once again sustainable."
# step 1
len()
# step 2
? .upper()
# step 3
? .replace(*, *, *)
# step 4
? .count()
const n=100;
var ar:array of array of integer;
ars:array of array of string;
i:integer;
procedure complection(var ar:array of array of integer;var ars:array of array of string);
var
i,j:integer;
begin;
for i:=1 to n do
begin;
for j:=1 to n do
begin;
ar[i,j]:=random(9);
str(ar[i,j],ars[i,j]);
end;
end;
end;
procedure burning(ars:array of array of string);
var
i,j:integer;
t:text;
begin;
assign(t,'text.txt');
rewrite(t);
for i:=1 to n do
begin;
writeln(t,' ');
for j:=1 to n do
write(t,ars[i,j],' ');
end;
end;
begin;
randomize;
setlength(ar,n+1);
setlength(ars,n+1);
for i:=1 to n do
begin;
setlength(ar[i],n+1);
setlength(ars[i],n+1);
end;
complection(ar,ars);
burning(ars);
end.
const
MAX_SIZE = 100;
var
size, n: integer;
stack: array[1..MAX_SIZE] of integer;
procedure push(a: integer);
begin
inc(size);
stack[size] := a;
end;
procedure view;
var
i: integer;
begin
for i := 1 to size do
write(stack[i], ' ');
writeln;
end;
Для очереди:
const
MAX_SIZE = 100;
var
head, tail: integer;
queue: array[1..MAX_SIZE] of integer;
procedure push(a: integer);
begin
queue[tail] := a;
inc(tail);
end;
procedure view;
var
i: integer;
begin
for i := head to tail - 1 do
write(queue[i], ' ');
writeln;
end;
И стек и очередь реализованы с массива. Нужно следить, чтобы размер структуры не был больше размера массива