Форум
» Назад на решение задач по физике и термеху
Регистрация | Профиль | Войти | Забытый пароль | Присутствующие | Справка | Поиск

» Добро пожаловать, Гость: Войти | Регистрация
    Форум
    Информационные технологии
        Турбо Паскаль. Программирование на Pascal
Отметить все сообщения как прочитанные   [ Помощь ]
» Добро пожаловать на форум "Информационные технологии" «

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 ]
Модераторы: paradise, KMA
  

miss_graffiti


Долгожитель

можно бежать выполнять?..
в чем прикол на нескольких форумах одно и то же писать?

Всего сообщений: 670 | Присоединился: сентябрь 2005 | Отправлено: 7 дек. 2006 20:10 | IP
Guest



Новичок

Помогите плиз решить вот такую задачу:
"Сведения об автомобиле состоят из фамилии и инициалов владельца (на русском языке), марки автомобиля, номерного знака и года выпуска автомобиля.  Даны два файла, содержащие сведения об автомобилях (возможны пересечения).
Выделить автомобили, фамилии владельцев которых содержат заданную последовательность букв. Сгруппировать их по маркам, внутри марки – по году выпуска, а внутри года – в алфавитном порядке владельцев."    

Всего сообщений: Нет | Присоединился: Never | Отправлено: 12 дек. 2006 17:41 | IP
molodzo


Удален

Ребят, че-то не получается часть задачки. Помогите!!!

Не могу через функцию найти максимальный элемент и вывести его на экран.
Вот, что пишу:

const
  n=5;
type
  massiv=array[1..n] of integer;
Var
  a:massiv;
  max1,max2,max3:real;
  i:integer;


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

function raschet(a:massiv):integer;
var
  i:integer;
begin
for i:=1 to n do
 if max1<a then
 begin
    max1:=a;
 end;
 writeln('max1=',max1);
end;

Begin
  writeln('razmer massiva a=',n);
  vvod(a);
  max1:=raschet(a);
End.


Всего сообщений: N/A | Присоединился: N/A | Отправлено: 13 дек. 2006 19:10 | IP
amigo


Начинающий

function raschet:integer;
var
 i:integer;
 
begin
max1:=A[1];
for i:=1 to n do  if max1<a then     max1:=a;
{// Почемуто комп не показывает А итое
{}
writeln('max1=',max1);
raschet:=max1;
end;



(Сообщение отредактировал amigo 13 дек. 2006 20:21)


(Сообщение отредактировал amigo 13 дек. 2006 20:22)


(Сообщение отредактировал amigo 13 дек. 2006 20:24)

Всего сообщений: 54 | Присоединился: март 2006 | Отправлено: 13 дек. 2006 20:19 | IP
KMA



Долгожитель

потому что косорукие админы забыли прописать выходные данные =) Это я щучу.

У вас процедура vvod содержит только входные данные, а вы хотите же получить сам массив, а значит вам нужны выходные  данные, короче, что бы не париться измените заголовок вот так:

procedure vvod(Var a: massiv);

Помните что ваше i в квадратных скобках, это элемент кода, означающий курсив, поэтому, либо используйте j, k или другими переменными, или условно заключайте их в {} скобки.

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 13 дек. 2006 21:59 | IP
KMA



Долгожитель

а, еще забыл в общем, чтобы у вас красиво было, а то и amigo кое что неверно, и у molodzo:

function max_in_mas (a: massive): integer;
Var
    max: ineger;
    j: byte;
Begin
      max:=a[1];
      for j:=2 to n do
        if a[j]>max
          then max:=a[j];
     max_in_mas:=max;
End;

А в самой программе уже дописать, как вы поняли:
BEGIN
      writeln('razmer massiva a=',n);
      vvod(a);
      max1:=max_in_mas(a);
      writeLn ('Максимальный элемент: ', max1:5:2)
END;

(Сообщение отредактировал KMA 14 дек. 2006 1:37)

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 13 дек. 2006 22:07 | IP
molodzo


Удален

Что-то не получается.Он выдает, что max=0!!!

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

function max_in_mas (a: massiv): integer;
Var
   max: integer;
   j: byte;
Begin
     for j:=2 to n do
       if a[j]>max
         then max:=a[j];
    max_in_massiv:=max;
End;


Begin
  writeln('razmer massiva a=',n);
  vvod(a);
  max1:=max_in_mas(a);
     writeLn ('Максимальный элемент: ', max1:5:2)
End.

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 13 дек. 2006 22:45 | IP
KMA



Долгожитель

molodzo, я для кого писал красным цветом???
Это раз, во вторых, вы с меня списываете некорректно, а потом еще возмущаетесь. У меня программа работает как по часам... Я скинул вам полный исходник, но все равно исправьте ваш текст...

Всего сообщений: 940 | Присоединился: декабрь 2005 | Отправлено: 14 дек. 2006 1:29 | IP
Draconit


Новичок

Решите мне пожалуйста задачи по Pascal!!! Их всего 10 штук. Само собой не за бесплатно.

Всего сообщений: 27 | Присоединился: март 2006 | Отправлено: 14 дек. 2006 3:43 | IP
molodzo


Удален

Спасибо большое, теперь все работает "как по часам"))

Всего сообщений: N/A | Присоединился: N/A | Отправлено: 14 дек. 2006 10:39 | IP

Эта тема закрыта, новые ответы не принимаются

Переход к теме
<< Назад Вперед >>
Несколько страниц [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 ]

Форум работает на скрипте © Ikonboard.com