Создайте программу и опишите в ней не менее 12 переменных, относящихся к различным скалярным типам данных

Создайте программу и опишите в ней не менее 12 переменных, относящихся к различным скалярным типам данных. С помощью оператора присваивания присвойте этим переменным следующие значения:

V;  254*V;  1-254*V;  -1*V;  65536;  3.5*V;  3.5E-45/V;  3.5E100;  3.5*V; 2^13; ’G’;  TRUE

где V – номер варианта (переменная типа byte)


Program Hello; 
var 
  V: byte; 
  a: shortint; 
  b: byte; 
  c: word; 
  d: integer; 
  e: 
  f: real; 
  g: 
begin 
  // readln(V); 
  // V:= 4; 
  readln(a); 
  a:= V; 
  readln(b); 
  b:=254*V; 
  readln(c); 
  c:=1-254*V; 
  readln(d); 
  d:=65536; 
  readln(f); 
  f:=3.5*V; 
end.

Подобие программы которую я начал писать


Ответы (1 шт):

Автор решения: MBo

Вот пример 12 типов (Real в TurboPascal шестибайтовый, а в других может совпадать с другими типами) и некоторые присваивания. Нужно в хелпе посмотреть описания типов, их диапазоны, и подумать, куда, например, можно безопасно записать 65536

var
  V: byte;

  si8: ShortInt;
  ui8: Byte;
  si16: SmallInt;
  ui16: Word;
  si32: LongInt;
  ui32: Cardinal;

  sng4: Single;
  dbl8: Double;
  re6: Real; {Real48 в Delphi}
  ext10: Extended;

  ch: Char;

  boo: Boolean;

begin
  readln(V);

  ui8 := V;

  ui32 := 254*V;

  si32 := 1-254*V;

  si8 := -1 * V;  {Для номера варианта сойдёт, но не в общем случае. Почему?}

  sng4 := 3.5*V;

  dbl8 := 3.5E100; {но не single. Почему?}
→ Ссылка