Sorcerer
Member
а файлы можно?)Помогите, плз!!1
Нужно написать программу, которая будет считать количество нулевых значений в ряде A1,A2,A3,...,Ak, используя операторы циклов, нельзя использовать массивы....
а файлы можно?)Помогите, плз!!1
Нужно написать программу, которая будет считать количество нулевых значений в ряде A1,A2,A3,...,Ak, используя операторы циклов, нельзя использовать массивы....
Эм, я уже написал , только для ограниченого количества значений, кому интерестно, вот:а файлы можно?)
Program trylala;
uses wincrt;
var a,k,n:integer;
begin
writeln('Задайте значения a');
for a:=1 to 5 do
begin
readln(n);
if n=0 then
k:=k+1;
end;
writeln('k= ', k);
end.
Program trylala;
uses crt; //в Turbo Pascal 7.0 нету модуля wincrt
var a,k,n,kol:integer;
begin
clrscr;
writeln('Введите количество элементов'); /* логичней узнать количество элементов
readln(kol); до начала иницилизации значений */
writeln('Задайте значения a');
for a:=1 to kol do
begin
readln(n);
if n=0 then
k:=k+1;
end;
writeln('k= ', k);
readkey; // задержка
end.
Спасибо , то что нужно, ммм насчет модуля, дело в том, что я писал в Borland Pascal 7.0, там наоборот , я только начинающий програмист , почемуто не подумал обозначить количество елементов отдельной переменной !!1можно немного изменить (думаю так правильней будет)
Код:Program trylala; uses crt; //в Turbo Pascal 7.0 нету модуля wincrt var a,k,n,kol:integer; begin clrscr; writeln('Введите количество элементов'); /* логичней узнать количество элементов readln(kol); до начала иницилизации значений */ writeln('Задайте значения a'); for a:=1 to kol do begin readln(n); if n=0 then k:=k+1; end; writeln('k= ', k); readkey; // задержка end.
насколько я понял условие, то 1яПомогите решить, ну ниче никак не могу понять массивы
Turbo Pascal
1)Есть натуральное число N и последовательность попарно разных действительных чисел a1,a2,a3,...,an. Нужно поменять местами, в дано последовательности, найменьший член с членом, который стоит на K месте...!!!
(С использованием 1-но мерного массива)...
2)Задано таблицу A[i,j], где i,j=1,2,3,...,m, которая имеет только действительные числа, с помощью таблици найти элементы Cj, j=1,2,3,...,m, значения которых равны сумме элементов соответственных рядков таблици...!!!
(Двомерный массив)...
ЗЫ: sorry за ошибки, если есть в правописании
uses crt;
const n=10;
var i,min,t,t1,k:integer;
a:array[1..n] of integer;
begin
clrscr;
readln(k);
randomize;
a[1]:=random(30)-15;
min:=a[1];
write(a[1],',');
t1:=1;
for i:=2 to n do
begin
a[i]:=random(30)-15;
write(a[i],',');
if a[i]<min then
begin
min:=a[i];
t1:=i;
end;
end;
t:=a[t1];
a[t1]:=a[k];
a[k]:=t;
writeln('');
for i:=1 to n do
write(a[i],',');
readkey;
end.
uses crt;
const m=10;
var
i,j,k,sum:integer;
a:array[1..m,1..m] of integer;
c:array[1..m] of integer;
begin
crlscr;
randomize;
k:=1;
for i:=1 to m do
begin
c[i]:=0;
for j:=1 to m do
begin
a[i,j]:=random(30)-15;
c[i]:=c[i]+a[i,j];
gotoxy(k,j);
write(a[i,j]);
end;
gotoxy(k,m+2);
write(c[i]);
inc(k,8);
end;
readkey;
end.
program mas4;
uses crt;
var
a:array[1..10] of integer;
i,m,l,n:byte;
begin
randomize;
for i:=1 to 10 do
begin
a[i]:=random(10);
write(a[i],' ');
end;
write('к-во шагов');
readln(n);
for l:=1 to n do
[COLOR="Red"] begin
m:=a[10];
a[10]:=a[1];
a[1]:=m;
end;[/COLOR]
for i:=1 to 10 do
write(a[i],' ');
end.
program mas7;
uses crt;
var
a:array[1..10] of integer;
i,x,n,p:byte;
write('Введите эл. массива');
x:=wherex;
for i:=1 to 10 do
begin
clreol;
write('a[',i,']= ');
read(a[i]);
end;
for i:=1 to 10 do
write(a[i],' ');
write('Введите число для поиска');
read(n);
while a[i]<>n do
i:=i+1;
write('Первое вхождение',n,'на',a[i],'месте'); {здесь надо вывести номер искомого элем. и его индекс}
end;
while a<>n do
while (a<>n and i<=10) do
write('Первое вхождение',n,'на',a,'месте');
не будет работать правильно, если искомого элемента нету в массиве. Для этого нужно делать проверку (юзать флажок какой-то, например)write('Первое вхождение',n,'на',i,'месте');