Var a,d:integer;
b,c:real;
begin
a:=30;
b:=14.9;
c:=33.33;
d:=1944;
writeln(a,',',b,',',c,',',d)
end.
Смотри. В самом начале идёт единица. Если следующим идёт ноль, то результат просто умножаем на 2,если идёт единица, то результат умножаем на 2 и прибавляем у полученному единицу.
1*2+1*2*2+1*2+1*2+1*2*2=220
1*2+1*2*2*2+1*2*2+1=101
121212 – можно расшифровать как АБАБАБ или ККК, например
253010 – ЧЬИ или БДЬИ
203033 – ТЬЯ или ТЬВВ
Остается 203105 (ТВИД). Эта кодовая цепочка расшифровывается однозначно: 0 может появиться только в конце кода, поэтому в коде обязательно есть 20 и 10. Получается однозначное разбиение на буквы 20-3-10-5.
<span>Для Microsoft Visual Studio 2012
#include <iostream>
using namespace std;
void main(){
setlocale(0,"");
int a,b=0,c,d=0;
cout<<"Введите длину посдедовательности ";cin>>c;
do {cout<<"Введите число: ";cin>>a;b=b+a; d++;} while(d!=c);
cout<<"Сумма чисел в последовательности = "<<b;
cin.get();
cin.get();
}
Для Microsoft Visual Studio 2006
#include <iostream.h>
void main(){
int a,b=0,c,d=0;
cout<<"Введите длину посдедовательности ";cin>>c;
do {cout<<"Введите число: ";cin>>a;b=b+a; d++;} while(d!=c);
cout<<"Сумма чисел в последовательности = "<<b;
}
2 вариант этой же программы
Для Microsoft Visual Studio 2012
#include <iostream>
using namespace std;
void main(){
setlocale(0,"");
int a,b=0,c;
char d;
do {cout<<"Введите число: ";cin>>a;b=b+a; cout<<"Хотите ввести еще число?(y/n)";cin>>d;} while(d!='n');
cout<<"Сумма чисел в последовательности = "<<b;
cin.get();
cin.get();
}
Для Microsoft Visual Studio 2006
#include <iostream.h>
void main(){
int a,b=0,c;
char d;
do {cout<<"Введите число: ";cin>>a;b=b+a; cout<<"Хотите ввести еще число?(y/n)";cin>>d;} while(d!='n');
cout<<"Сумма чисел в последовательности = "<<b;
}</span>