steff77
?>

Створити похідний клас - «Сфера». Визначити функції друку, конструктори, обчислення площі кола і сфери, обсягу сфери, перепризначення координат центрів окружності і сфери.c++

Информатика

Ответы

Minchenkova
1)
var
    s: string[6];
    n: integer;

begin
    s := 'отлично';
    n := length(s);
    writeln(length('отлично'));
    writeln(n);
end.

Изначально выставлен тип string[6], значит если присвоить строку больше, то ее обрежет по 6 символов, вот и весь прикол
ответ 6

2) рисунок

3)var
    s, s1: string;
    n: integer;

begin
    s := 'информатика';
    s1 := copy(s, 3, 5);
    n := pos(s, s1);
    writeln('s=', s);
    writeln('s1=', s1);
    writeln('n=', n);
end.

Вывод
s=информатика
s1=форма
n=0

Все верно, в s1 не содержится s, а наоборот

Садекватным объяснением! 1) дан фрагмент программы: var s: string[6]; n: integer; begin s: ='отлично
msburmis
// PascalABC.NET 3.2, сборка 1356 от 04.12.2016
// Внимание! Если программа не работает, обновите версию!

type
  Point=record
    x,y:real;
    name:char
  end;
  Vector=record
    x,y,l:real;
  end;

function CreatePoint(px,py:real):Point;
begin
  With Result do begin
    x:=px;
    y:=py;
  end
end;

function CreateVector(A,B:Point):Vector;
begin
  With Result do begin
    x:=B.x-A.x;
    y:=B.y-A.y;
    l:=Sqrt(x*x+y*y)
  end
end;
 
function IsNormal(A,B:Vector):=Abs(B.x*A.x+B.y*A.y)<=1e-6;

begin
  var x,y:real;
  Write('Введите координаты x и y точки A: '); Read(x,y);
  var A:=CreatePoint(x,y);
  Write('Введите координаты x и y точки B: '); Read(x,y);
  var B:=CreatePoint(x,y);
  var AB:=CreateVector(A,B);
  Write('Введите координаты x и y точки C: '); Read(x,y);
  var C:=CreatePoint(x,y);
  var BC:=CreateVector(B,C);
  if Abs(AB.l-BC.l)>1e-6 then begin
    Writeln('Стороны AB и BC не равны');
    Exit
    end;
  if not IsNormal(AB,BC) then begin
    Writeln('Стороны AB и BC не перпендикулярны');
    Exit
    end;
  Write('Введите координаты x и y точки D: '); Read(x,y);
  var D:=CreatePoint(x,y);
  var CD:=CreateVector(C,D);
  if Abs(AB.l-CD.l)>1e-6 then begin
    Writeln('Стороны AB и CD не равны');
    Exit
    end;
  var AD:=CreateVector(D,A);
  if Abs(AB.l-AD.l)>1e-6 then Writeln('Стороны AB и ADC не равны')
  else Writeln('Точки образуют квадрат с точностью не ниже 0.000001')
end.

Пример
Здесь заданы координаты квадрата, сдвинутого относительно осей координат и повернутого на угол 30 градусов против часовой стрелки. Поэтому числа такие "некруглые".

Введите координаты x и y точки A: -0.4641 -4.4641
Введите координаты x и y точки B: 3.5359 2.4641
Введите координаты x и y точки C: 10.4641 -1.5359
Введите координаты x и y точки D: 6.4641 -8.4641
Точки образуют квадрат с точностью не ниже 0.000001

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Створити похідний клас - «Сфера». Визначити функції друку, конструктори, обчислення площі кола і сфери, обсягу сфери, перепризначення координат центрів окружності і сфери.c++
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Можарова14
bas7572513
Александрович686
Валерия Воробьева396
Olgax732
Анатольевна
Minchenkova
Стадник620
marysya60
Aleks0091
Шуршилина_Ильич
Евгений1286
vdm4275
БашуроваОльга369
kareeva