Всё довольно просто. Вещественные в си++ это double и мы их обьявляем и сразу задаём их значение.
Далее цикл while задаём внутренее условие аналогичное коду задания.
Далее просто переписываем всё из кода задания.
В конце вывод.
Код:
#include <iostream>
using namespace std;
int main() {
double a=0,P=1;
while(a <= 20){
P*=a;
a+=2;
}
cout << P;
}
//Pascal
//Для натуральных чисел
var a, s, p:integer;
begin
write('Введите число = ');
readln(a);
s := 0;
p := 1;
while (a<>0) do
begin
p := p * (a mod 10);
s := s + (a mod 10);
a := a div 10;
end;
writeln( 'Сумма цифр числа = ', s);
writeln( 'Произведение цифр числа = ', p);
end.
//Если число отрицательное
var
s, p, a, b, c: integer;
f: boolean;
begin
write('Введите число = ');
readln(a);
if a < 0 then
f := true;
a := abs(a);
b := a mod 10;
a := a div 10;
c := a mod 10;
a := a div 10;
if f = true then
begin
p := (-a) * b * c;
s := -a + b + c;
end
else
begin
s := a + b + c;
p := a * b * c;
end;
writeln('Сумма цифр числа = ', s);
writeln('Произведение цифр числа = ', p);
end.
Var
s:string;
n:integer;
begin
Write('Вводите: '); Readln(s);
n:=Length(s);
s:=Copy(s,n-2,3)+Copy(s,4,n-6)+Copy(s,1,3);
Writeln(s)
end.
**************************************************
var
s:string;
c:char;
i,n:integer;
begin
Write('Вводите: '); Readln(s);
n:=Length(s);
for i:=1 to 3 do begin
c:=s[i]; s[i]:=s[n-3+i]; s[n-3+i]:=c
end;
Writeln(s)
end.
Результат
Вводите: Информатика
икаорматИнф
//PascalABC.Net 3.0, сборка 1052
type
Balls = class
r:real;
constructor (rr:real);
begin r:=rr end;
function VB:real;
begin
VB:=4*Pi*r*sqr(r)/3
end;
end;
var
b:Balls;
R:real;
begin
Write('Радиус шара= '); Read(R);
b:=new Balls(R);
Writeln('Объем шара равен ',b.VB:0:3)
end.
<em><u>Тестовое решение:</u></em>
Радиус шара= 25
Объем шара равен 65449.847
Если мы говорим о кодировке ASCII, где 1 символ занимает 8 бит в памяти ( или 1 байт ), то тогда : 8*7 = 56 ( 7 -- кол-во символов )