Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program Program1;
- uses school;
- function F(digit: string): string;
- begin
- var digit_список := digit.ToList;
- var digit_без_нулей := new List<char>;
- var cnt := 0;
- foreach var x in digit do
- begin
- if (x ='0') then begin
- cnt += 1;
- digit_без_нулей := digit_список[cnt:];
- end
- else
- break;
- end;
- if (digit_список.Count) > 0 then Result := digit_без_нулей.JoinToString;
- end;
- // основная программа
- begin
- var digit_bin := Bin(ReadInteger);
- Println(digit_bin);
- var digit_revers := digit_bin[::-1]; // переворачиваю число
- Println(digit_revers);
- Println(F(digit_revers));
- end.
- /////////////////// второй вариант, без функции ////////////////
- ## uses school;
- var digit := '10101000';
- Println(digit);
- Println((Dec(digit,2)));
- var digit_revers := digit[::-1].ToList;
- Println(digit_revers);
- var digit_not_null := new List<char>;
- var cnt := 0;
- foreach var x in digit_revers do
- if x = '0' then
- begin
- cnt += 1;
- digit_not_null := digit_revers[cnt:];
- end
- else break;
- Println(digit_not_null);
- var rez := digit_not_null.JoinToString;
- Println(rez)
- /////////////////////////// третий вариант, еще круче, с TrimStart ////////////////////////////
- ## uses school;
- var (digit_bin,digit_revers,digit_not_null,digit_dec)
- := ('','','',0);
- for var x := 1 to 100 do
- begin
- digit_bin := Bin(x);
- digit_revers := digit_bin[::-1];
- digit_not_null := digit_revers.TrimStart('0'); //вот оно, спасение!!!
- digit_dec := Dec(digit_not_null,2);
- Println(digit_dec);
- //нужно ещё какое-то условие
- end;
Advertisement
Add Comment
Please, Sign In to add comment