Составить алгоритм при выполнении которого кузнечик перекрасит: а) все положительные четные числа; б) все положительные нечетные числа. начальное положение - точка 0. система команд кузнечика: вперёд 2 - кузнечик прыгает вперёд на 2 единицы; назад 1 - кузнечик прыгает назад на 1 единицу. пределы от 0 до 20.
Program test;
var a,i,b,c,d,count:integer;
a1,i1,b1,c1,d1,count1,m1:integer;
a2,i2,b2,c2,d2,count2,summ2:integer;
begin
count := 1;
c := 0;
b := 1;
writeln('Введите номер элемента Фибонначи');
readln(a);
writeln('');
if a=1 then writeln(0);
if a=2 then writeln(1);
if a>2 then
while count<=a-2 do
begin
d := b + c;
c := b;
b := d;
count := count + 1;
end;
if a>2 then writeln(d);
writeln('');
begin
count1 := 1;
c1 := 0;
b1 := 1;
writeln('Введите число M');
readln(m1);
writeln('');
if m1=0 then writeln(1);
if m1=1 then writeln(2);
if m1>1 then
while true do
begin
d1 := b1 + c1;
c1 := b1;
b1 := d1;
count := count+ 1;
if d1>m1 then break;
end;
if m1>1 then writeln(d1);
writeln('');
end;
begin
summ2 := 1;1
count2 := 1;
c2 := 0;
b2 := 1;
writeln('');
while true do
begin
d1 := b1+ c1;
if d1>1000 then break;
c1 := b1;
b1 := d1;
count := count + 1;
summ2 := summ2 + d1;
writeln(summ2);
end;
writeln('');
end;
end.
Объяснение:
#include <iostream>
#include <string>
using namespace std;
void DeleteStr(string&, int, int);
int main(void)
{string s;
int n,l;
cin>>s>>n>>l;
DeleteStr(s,n,l);
cout<<s<<endl;
return 0;}
void DeleteStr(string &s, int n, int l)
{for(int i=n;i<s.length();i++) //начинаем удаление с n элемента
if(i+l<s.length()) //проверка не выходит ли смещение за границы строки
s[i]=s[i+l]; //если не выходит, просто переносим символ с позиции+l
else
s[i]='\0'; //иначе вводим на позицию пустой символ
}
Пример ввода:
Caster 1 4
Пример вывода:
Cr