Консультация № 174640
28.11.2009, 16:46
0.00 руб.
0 3 1
Добрый день, уважаемые эксперты! Помогите решить одну задачку!
Даны натур.n, вещественное число с и логический массив х из n элементов(массив одномерный). Вычислить y=c в степени к, где к – число элементов массива х, предшествующих первому по порядку элементу, имеющему значение false (если все значения имеют true то принять к= n)

Обсуждение

Неизвестный
30.11.2009, 10:46
общий
это ответ
Здравствуйте, angel.nero.
Решение в приложении.
Компилятор Borland Pascal 7.0

Приложение:
uses crt;
const n=15;
var
c,y: real;
x: array[1..n] of boolean;
i,k: byte;
begin
clrscr;
write('Введите значение C: ');
read(c);
randomize;
for i:=1 to n do
begin {Заполняем массив х значениями}
if random(2)=0 then
x[i]:=false
else
x[i]:=true;
writeln(i:2,x[i]:6) {и выводим на печать}
end;
k:=0;
for i:=1 to n do
if x[i] then {Если элемент массива содержит TRUE}
inc(k) {Увеличиваем k на 1}
else
break; {Как только встретилось FALSE выходим из цикла}
y:=1;
for i:=1 to k do
y:=y*c;
writeln('Y=',y:3:1);
readkey
end.
Неизвестный
30.11.2009, 20:09
общий
Максим Юрьевич:
Добрый вечер!
Код:

{ • Вопрос № 174640 }
uses crt;
const n=15;
var
c,y: real;
x: array[1..n] of boolean;
i,k: byte;
begin
clrscr;
write('Введите значение C: ');
read(c);
randomize;
for i:=1 to n do
begin {Заполняем массив х значениями}
{************************}
x[i] := random(2)<>0;
{************************}
writeln(i:2,x[i]:6) {и выводим на печать}
end;

{************************}
k:=1;
y:=1;
while (k<=n) and (x[k]) do
begin
y:=y*c;
inc(k);
end;
{************************}
writeln('Y=',y:3:1);
readkey
end.
Неизвестный
30.11.2009, 20:44
общий
leonid59:
Добрый вечер!

Мне нравится Ваш стиль.
Форма ответа