Нужно построить трассировочную таблицу к этому алгоритму: var x, a, b, f, p :i nteger; s, c : real;
begin
writeln('Введите x');
read(x);
s := 0;
a:= 1;
c:=1;
while a 0 then begin c:= -1*(p/f); end {+ меняется на -}
else if c < 0 then c := p/f; {- меняется на +}
s := s - c; {считается сумма}
writeln('a=',a,', p/f=',p/f:2:2,', s=',s:2:2, ', c=',c:2:2);
a := a+2;
end;
writeln('s=',s:2:2);
end.
Также решение программы:
x=3
a=1, p/f=3.00, s=3.00, c=-3.00
a=3, p/f=4.50, s=-1.50, c=4.50
a=5, p/f=2.02, s=0.53, c=-2.02
a=7, p/f=0.43, s=0.09, c=0.43
a=9, p/f=-0.65, s=-0.56, c=0.65
a=11, p/f=-3.62, s=-4.18, c=3.62
a=13, p/f=-1.61, s=-5.79, c=1.61
s=-5.79
Очень надо!!
begin
var m,n:integer;
Write('Количество строк и столбцов матрицы: ');
Read(n,m);
var a:=MatrixRandom(n,m,10,99);
for var i:=0 to n-1 do begin
for var j:=0 to m-1 do Print(a[i,j]);
Writeln
end;
var p:=ReadInteger('Введите число Р:');
var b:array of integer;
SetLength(b,4*m);
var k:=0;
for var i:=n-p to n-1 do
for var j:=0 to m-1 do
if a[i,j] mod 4=0 then begin
b[k]:=a[i,j]; Inc(k)
end;
SetLength(b,k);
b.Print
end.
Тестовое решение:
Количество строк и столбцов матрицы: 6 8
67 70 68 72 38 72 96 38
49 75 24 55 72 63 21 40
72 12 60 22 74 30 13 45
22 45 39 24 35 97 64 31
76 62 15 94 56 28 31 13
41 67 75 37 67 13 25 20
Введите число Р: 4
72 12 60 24 64 76 56 28 20
#include <cstdlib>
#include <vector>
using namespace std;
int main()
{
vector<int> v;
cout <<"Укажите размер массива: ";
int s;
cin >>s;
srand(time(0));
for(int i=0; i!=s; ++i)
v.push_back(rand()%100);
int find;
cout <<"Введите число для поиска: ";
cin >>find;
bool founded = false;
for(auto it=v.begin(); it!=v.end(); ++it)
if(*it==find) founded=true;
if(founded)
cout <<"Это число есть в массиве!" <<endl;
else cout <<"Такого числа нет в мвссиве!" <<endl;
return 0;
}