Pascal

  • Автор темы man322
  • Дата начала
Статус
Закрыто для дальнейших ответов.
M

man322

#1
здраствуйте у меня такая проблема по написанию одномерного массива программа естй но она находит самый наименший непарный массив а мне нада 4тобы он находил наименьшее значение во всем массиве помагите исправитй эту ошыбку заранее блогадарен за любую помощь

текст программы:
Код:
program massiv1;
const  num=20;  
var
oper,		

i,j :  integer;	
ms: array[1..num] of real;
x, dx :real;
idet : integer; 
MinV: real;		 
label MENU, SOLVE, BEIGAS;
begin
MENU:
x:=0.27; dx:=0.345;
writeln;
writeln( 'Programma domata ciklu operatoru un masivu apgusanai ');
writeln( ' 3333 - beigt');
writeln( ' 1111 - rekinat ar standarta sakumvertibam ');
writeln( ' jebkurs cits skaitlis rekinat ar pasa uzdotam sakumvertibam');
read( oper);
if oper=3333 then goto BEIGAS;
if oper=1111 then goto SOLVE;
{masiva aizpildisana un aprekini }
writeln( 'ievadi divus realus skaitlus,tie noteiks masiva elem. vertibas');
read(x, dx);
SOLVE:
for i:=1 to num do
begin
ms[i]:=10*sin(x);
x:=x+dx;
end;		 writeln;
for i:=1 to num do 
begin
write( '	 "',i:2, '"', ms[i]:10:5)
end;
writeln;  writeln(' Lai turpinatu ievadi jebkuru skaitli ');
read(j);

MinV:=ms[i]; idet:=i;
for i:=1 to num do
if i mod 2 = 1 then
if ((ms[i]< MinV) and (ms[i] >0)) then
begin
MinV:= ms[i];
idet:=i;
end;
if MinV>0 then
begin
writeln(' minimalnaja neparnoe znachenije massiva :', MinV:10:5);
writeln(' minimalnij indeks :', idet:5);
end;
if MinV<0 then
begin
writeln ('otvetov net');
end;
goto MENU;

BEIGAS:
end.


и есще если можете помагите написать блок схему етой программы а то у меня вообще не чего не получаетса ;)
вот что у меня вишло с блог схемой
http://i015.radikal.ru/0911/5d/4c74d94fe2e8.jpg
 
I

isqoff

#2
если я правильно понял , то тебе надо программа поиска минимального эллемента массива(если да то вот код :) )


Код:
uses Crt;
var a:array[1..100]of integer;
i,min,n,buf:integer;

BEGIN
writeln('Введите количество эллементов массива для ввода от 1 до 100:');
readln(n);

for i:=1 to n do
begin
write('a[',i,']=');
readln(a[i]);
end;

min:=a[1];
for i:=2 to n do
if min > a[i]
then begin
buf := min;
min := a[i];
a[i]:= buf;
end;

writeln('Минимальное число массива = ',min);
END.
 
Статус
Закрыто для дальнейших ответов.