• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Пожалуйста, помогите с задачей в Паскале.

  • Автор темы Автор темы scald
  • Дата начала Дата начала

scald

Ученик
Регистрация
4 Фев 2010
Сообщения
4
Реакции
0
Баллы
0
Пожалуйста, помогите с задачей в Паскале.

Здраствуйте! Помогите , пожалуйста решить простую задачу для сдачи в институте. В программировании не особо, а оценк путная нужна. Помогите, пожалуйста.

Вводится длина одномерного массива (вектора) и значения его элементов.
Вводится дополнительный массив разрешенных значений. Определить и вывести на экран, сколько элементов исходного массива имеют разрешенные значения.

и

Ввести размер прямоугольной матрицы и значения ее элементов.

Построить вектор В, где В(i) -

максимальное значение в i-ом столбце.


Заранее благодарен.
 
Так. Во-первых, не дублируйте сообщения - от этого быстрее ответа не получите, а форум засоряете, а во-вторых, давайте-ка самостоятельно: задачки тупые, рутинные, ясельного уровня. В крайнем случае, выкладывайте свои наработки - поправим, подскажем. А вылезать с ТАКИМ - мол, делайте за меня, мне лень разбираться в азах программирования - не дело. Если с этого начинаете, то что дальше - так и будете на форумах выезжать?
 
Владимир, а ты понял, что это за "дополнительный массив разрешенных значений"? Как я понял, это просто некоторый набор чисел, с которыми надо сравнивать элементы исходного массива, и в случае совпадения, подсчитывать и выводить на экран?
 
Владимир, а ты понял, что это за "дополнительный массив разрешенных значений"? Как я понял, это просто некоторый набор чисел, с которыми надо сравнивать элементы исходного массива, и в случае совпадения, подсчитывать и выводить на экран?
Ага, я тоже именно так и понял.
P.S. Вот оттяфкал человека, а у самого кошки скребут. Просто я уже не в силах видеть словосочетание "минимальный (максимальный) элемент одномерного массива". Достали!
 
Встречаются люди, которые не могут даже описать или ввести массив, не говоря уж за поиск минимального.. И это даже не электрики с института, которым то программирование и даром не нужно, а люди из группы программистов. Просто человек один раз мимо ушей пропустил, второй.. И все, как что-то одно не понял, так и дальше все пошло комом. А материал новый изучается, и ком все растет и растет...
Автор, начните с разработки алгоритма.. Что и как вводить, как обрабатывать, что выводить. Не стесняйтесь, пускай это будет даже неправильный вариант, мы подскажем, что надо исправить
 
я на врача учусь да еще и работаю на скорой, в своей ,необходимой для работы области разбираюсь хорошо, а в програмировании откровенно говоря никак...никогда не думал, что мне это будет нужно и вдруг...ни примерного решения задач , ни алгоритма действий увы не знаю, посему и обращаюсь за решением к Вам, специалистам. Надеюсь поможете.
 
Ох, ну что с Вами сделаешь - докторов нужно баловать. Сегодня выложу.
 
Ну скоро даже сантехники и сварщики будут паскаль изучать..
 
Вводится длина одномерного массива (вектора) и значения его элементов.
Вводится дополнительный массив разрешенных значений. Определить и вывести на экран, сколько элементов исходного массива имеют разрешенные значения.

Код:
VAR
 A,P:ARRAY[1..20] of WORD;
 Na,Np,Nap,i,j:INTEGER;
BEGIN
 Write('Enter the number of elements in the main array: ');
 ReadLn(Na);
 WriteLn('Enter the integer positive values of main array:');
 For i:=1 to Na do
  begin
   Write('A[',i,']= ');
   ReadLn(A[i]);
  end;
 Write('Enter the number of permitted values: ');
 ReadLn(Np);
 WriteLn('Enter the permitted values:');
 For i:=1 to Np do
  begin
   Write('P[',i,']= ');
   ReadLn(P[i]);
  end;
 Nap:=0;
 For i:=1 to Na do
  For j:=1 to Np do
   If A[i]=P[j] then INC(Nap);
 WriteLn('The array contains ',Nap,' permitted values');
 ReadLn;
END.
 
Вторую - примерно через час (после обеда).
 
За первую спасибо огромное!
 
Ввести размер прямоугольной матрицы и значения ее элементов.
Построить вектор В, где В(i) - максимальное значение в i-ом столбце
Код:
VAR
 A:ARRAY[1..10,1..10] of WORD;
 M:ARRAY[1..10] of WORD;
 Nl,Nc,i,j:INTEGER;
BEGIN
 Write('Enter the number of lines (<=10): ');
 ReadLn(Nl);
 Write('Enter the number of columns(<=10): ');
 ReadLn(Nc);
 WriteLn('Enter the integer positive values of matrix elements:');
 For i:=1 to Nl do
  For j:=1 to Nc do
   begin
    Write('A[',i,',',j,']= ');
    ReadLn(A[i,j]);
   end;
 WriteLn;
 For i:=1 to Nl do
  begin
   For j:=1 to Nc do
    Write(A[i,j]:8);
   WriteLn;
  end;
 WriteLn;
 For j:=1 to Nc do
  begin
   M[j]:=A[1,j];
   For i:=2 to Nl do
    If A[i,j]>M[j] then M[j]:=A[i,j];
  end;
 WriteLn('The array of maximum column values:');
 For j:=1 to Nc do
  WriteLn('M[',j,']= ',M[j]);
 ReadLn;
END.
 
и за вторую спасибо большое. Знать бы конечно алгоритм ещё...ну да ладно. Спасибо Vladimir_S ! Не забуду Вашу отзывчивость и понимание ситуации. Всего Вам доброго!!!
 
Владимир, а почему во второй программе, вы не сделали так:

Код:
 A:ARRAY[1..Nl,1..Nc] of WORD;

с последующим вводом Nl и Nc с клавиатуры ? А сначала поставили ограничения в 10 элементов ?
 
Владимир, а почему во второй программе, вы не сделали так:

Код:
 A:ARRAY[1..Nl,1..Nc] of WORD;
с последующим вводом Nl и Nc с клавиатуры ? А сначала поставили ограничения в 10 элементов ?
А потому что Паскаль такого не допускает. В свое время (много-много лет назад) это для меня было сильным разочарованием - я перешел на Паскаль с языка, в котором подобные конструкции были в порядке вещей. Потом привык.
Что же можно?
1. Определить диапазон массива явно, как сделано в программе. Если длина массива наперед не известна, то нужно взять верхнюю границу "с запасом", благо современные компьютеры это позволяют. Почему 10? А с потолка. Ну то есть не совсем - хотелось, чтобы матрица помещалась на экране в DOS-моде.
2. Задать числа (Nl, Nc) в виде КОНСТАНТ. И только констант. Тогда появится несколько большая свобода, но всё равно, чтобы изменить значения этих чисел, придется лазать в текст программы, а потом перетранслировать.
Вот так. А больше - никак. Ну если, конечно, не лезть в динамические переменные, указатели и т.п. Но это - совсем другая кухня.
 
Ясно ) Спасибо
 
Назад
Сверху