Перейти к содержимому

Фотография

Delphi.вопрос.


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 199

#81
nnn1

nnn1
  • Завсегдатай
  • 134 сообщений


Только начал недавно изучать Делфи. И столкнулся вот с этими задачами. Покажите, пожалуйста, как решать, хоть наглядно посмотреть.

1)Дан массив действительных чисел. Среди них есть равные. Найти первый максимальный элемент массива и заменить его нулём

2)Группу детей, приехавшую в пионерский лагерь, распределяют по отрядам следующим образом:
6-7 лет – 5 отряд; 7-9 лет – 4 отряд; 9-11 лет – 3 отряд; 11-13 лет – 2 отряд; 13-15 (включительно) – 1 отряд. Определить по вводимому возрасту отряд для ребенка. (работа со списками )

3)Дана матрица A(n,m). Поменять местами первую и последнюю строку, а каждый элемент этих строк увеличить в два раза. (компонента StringGrid)


кто-нибудь поможет?

Лучше приведи свой пример решения. Если что не правильно, поправят.
PS не ошибается только тот, кто ничего не делает. А готовое решение - это не интересно :spy:
  • 0

#82
*LESHIY*

*LESHIY*

    Читатель

  • Свой человек
  • 708 сообщений
хотя бы с этой помогите. Я не давно начал изучать делфи и хочу в нем разобраться!
Работа с двумерным массивом.Дана матрица A(n,m). Поменять местами первую и последнюю строку, а каждый элемент этих строк увеличить в два раза.
  • 0

#83
Kork

Kork

    Читатель

  • Завсегдатай
  • 248 сообщений

хотя бы с этой помогите. Я не давно начал изучать делфи и хочу в нем разобраться!
Работа с двумерным массивом.Дана матрица A(n,m). Поменять местами первую и последнюю строку, а каждый элемент этих строк увеличить в два раза.

Разница между "сделать за кого то" и "помочь", все таки есть.
Какой код ты сам то придумал, где подсказать, в каких местах не ясно?
  • 0

#84
Zulkar

Zulkar

    Читатель

  • В доску свой
  • 3 243 сообщений
Эх, Kork, человек же ясно сказал, разобраться хочет, сами подумайте, сессия идет полным ходом, лабы сдать надо срочно. :laugh: Некогда самому учить и по гуглам лазить, дискотека через час. А что прямо перед сессией спохватился - так ведь лучше поздно, чем никогда.
>>>*LESHIY* - вы б так и написали, что зачет нужен, может кто-то и разжалобился бы. Просто изучение Delfi обычно не начинают с того, что пытаются поменять две строки местами в матрице. Это стандартная лаба 1, максимум 2 курса. Все мы через это проходили.
Если помочь человеку не вылететь - это еще можно понять, но если вы сами его изучаете, то написать готовый - ответ это значит принести только вред.
  • 0

#85
mergan

mergan
  • Свой человек
  • 730 сообщений

Это стандартная лаба 1, максимум 2 курса.

это даже не лаба... это на первом курсе... работа с циклами...

const
  n = 10;
  m = 10;
var
  A : array [1..n, 1..m] of integer;
  i, intTemp : integer;

begin
  for i = 1 to n do
  begin
	intTemp := A[i, 1] * 2;
	A[i, 1] := A[i, m] * 2;
	A[i, m] := intTemp;
  end;
end.

Сообщение отредактировал mergan: 07.06.2008, 11:24:56

  • 0

#86
Kork

Kork

    Читатель

  • Завсегдатай
  • 248 сообщений
2mergan
Если у тебя n стоки, а m столбики, то местами столбики меняются а не строки. :-/
  • 0

#87
mergan

mergan
  • Свой человек
  • 730 сообщений

2mergan
Если у тебя n стоки, а m столбики, то местами столбики меняются а не строки. :-)

не ваожно ... тут главное суть... там вообще это все надо в StringGridе крутить... а это вообще страшное колдунство
  • 0

#88
Zulkar

Zulkar

    Читатель

  • В доску свой
  • 3 243 сообщений

не ваожно ... тут главное суть... там вообще это все надо в StringGridе крутить... а это вообще страшное колдунство

Я дико извиняюсь, но при чем тут StringGrid? Зачем он в этой задаче вообще нужен? Тут простая консольная прога.
  • 0

#89
mergan

mergan
  • Свой человек
  • 730 сообщений

Я дико извиняюсь, но при чем тут StringGrid? Зачем он в этой задаче вообще нужен? Тут простая консольная прога.

для визуального отображения значений массива...
  • 0

#90
Zulkar

Zulkar

    Читатель

  • В доску свой
  • 3 243 сообщений
Теперь я понял почему новые приложения такие громоздкие. Подключать vcl ради показа элементов массива в виде таблицы и парится затем с StringGrid это конечно круто.

Может лучше вот так? Вывод матрицы в виде матрицы. Насколько я помню чуть ли не один из первых "алгоритмов" при изучении двумерных массивов.
for i:=1 to n do
begin
  for j:=1 to m do
	 write (a[i,j]:5); {вроде так делается форматированный вывод}
  writeln;
end;
Извиняйте если есть синтаксические ошибки, на паскале уже лет 5 как не писал.
  • 0

#91
mergan

mergan
  • Свой человек
  • 730 сообщений

Теперь я понял почему новые приложения такие громоздкие. Подключать vcl ради показа элементов массива в виде таблицы и парится затем с StringGrid это конечно круто.

может прежде чем понимать, стоит ознакомится с условиями задачи ... и какой пар вызывает StringGrid...

и еще то что удобно вам большинству обычных пользователей нах не нужно... им надо все по линеички... да к тому же колок и строк могет быть горозда больше чем влазиет символов на экран...
  • 0

#92
Zulkar

Zulkar

    Читатель

  • В доску свой
  • 3 243 сообщений

может прежде чем понимать, стоит ознакомится с условиями задачи ... и какой пар вызывает StringGrid...

Дак вы сами же говорили:

там вообще это все надо в StringGridе крутить... а это вообще страшное колдунство

А вот условие задачи

Работа с двумерным массивом.Дана матрица A(n,m). Поменять местами первую и последнюю строку, а каждый элемент этих строк увеличить в два раза.

Ну и где тут сказано, что нужен гуй?

и еще то что удобно вам большинству обычных пользователей нах не нужно... им надо все по линеички... да к тому же колок и строк могет быть горозда больше чем влазиет символов на экран...

Если человек только начал изучать программирование (даже не дельфи, ибо данная задача от языка не сильно зависит) то где ему будет проще разобраться - в моем коде, или с библиотекой vcl? не говоря уже о том, что прежде чем разбираться с vcl надо хотя бы немного понять саму концепцию ооп. Сейчас думаю для лешего удобство пользователей стоит точно не на первом месте.
  • 0

#93
Kork

Kork

    Читатель

  • Завсегдатай
  • 248 сообщений

и еще то что удобно вам большинству обычных пользователей нах не нужно... им надо все по линеички... да к тому же колок и строк могет быть горозда больше чем влазиет символов на экран...

Ничего, то что будет сделано, то и будет нужно пользователю. Пользователю работать надо а не рюшечки мацать. ;)
  • 0

#94
mergan

mergan
  • Свой человек
  • 730 сообщений

там вообще это все надо в StringGridе крутить... а это вообще страшное колдунство

ну я же не виноват, что у вас с чуством юмора проблемы...

А вот условие задачи

Работа с двумерным массивом.Дана матрица A(n,m). Поменять местами первую и последнюю строку, а каждый элемент этих строк увеличить в два раза.

Ну и где тут сказано, что нужен гуй?

специально для баклавров не умеющих читать ... привожу выдержку из оригинального поста...

Только начал недавно изучать Делфи. И столкнулся вот с этими задачами. Покажите, пожалуйста, как решать, хоть наглядно посмотреть.
....
....
3)Дана матрица A(n,m). Поменять местами первую и последнюю строку, а каждый элемент этих строк увеличить в два раза. (компонента StringGrid)


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

Если человек только начал изучать программирование (даже не дельфи, ибо данная задача от языка не сильно зависит) то где ему будет проще разобраться - в моем коде, или с библиотекой vcl? не говоря уже о том, что прежде чем разбираться с vcl надо хотя бы немного понять саму концепцию ооп. Сейчас думаю для лешего удобство пользователей стоит точно не на первом месте.

мдя реплика заслуживает уважения... видать вы так и не разобрались ни с VCL ни с ООП...


Ничего, то что будет сделано, то и будет нужно пользователю. Пользователю работать надо а не рюшечки мацать. ;)

ну да... особенно в лине... консоль рулит все остальное от лукавого ))))
  • 0

#95
Zulkar

Zulkar

    Читатель

  • В доску свой
  • 3 243 сообщений

привожу выдержку из оригинального поста...

Ок. Я основывался на последнем посте.

мдя реплика заслуживает уважения... видать вы так и не разобрались ни с VCL ни с ООП...

На основании чего вы сделали такой вывод? В отличии от вас я достаточно успел поработать под разными gui(и не только) тулкитами, vcl, qt, gtk, смотрел Tcl. Саму концепцию ООП понимаю достаточно хорошо, уровня свечения ауры не достиг, но мой код достаточно хорошо следут ООП. Имхо.

ну да... особенно в лине... консоль рулит все остальное от лукавого ))))

Заметьте - это вы притащили линукс в этот топик.

mergan, я вот не пойму, что вы постоянно цепляетесь к моему образованию? Завидно? Или у вас аргументов нет, и вы как идиот, начинаете переходить на личности?
  • 0

#96
mergan

mergan
  • Свой человек
  • 730 сообщений

На основании чего вы сделали такой вывод?

на основании ваших реплик из которых следует, что вы полностью непонимаете

В отличии от вас я достаточно успел поработать под разными gui(и не только) тулкитами, vcl, qt, gtk, смотрел Tcl.

очередной писькомер... малыш я сел програмировать когда тебе еще на свете не было... поэтому видал такое, о чем ты даже и не слыхал...

mergan, я вот не пойму, что вы постоянно цепляетесь к моему образованию? Завидно? Или у вас аргументов нет, и вы как идиот, начинаете переходить на личности?

малыш за образование начал ты цеплятся... а я теперь просто офигеваю с бакалавра...

Сообщение отредактировал mergan: 10.06.2008, 10:20:27

  • 0

#97
Zulkar

Zulkar

    Читатель

  • В доску свой
  • 3 243 сообщений

на основании ваших реплик из которых следует, что вы полностью непонимаете

Конкретно цитаты. Перестаньте сыпать общими фразами. Расскажите, о многомудрый, что я такого сказал, на основании чего можно с уверенностью говорить что я не понимаю. Или заткнитесь

очередной писькомер... малыш я сел програмировать когда тебе еще на свете не было... поэтому видал такое, о чем ты даже и не слыхал...

Пиписькомер, не спорю. Конкретно что ты видел, о чем я даже не слышал?

малыш за образование начал ты цеплятся... а я теперь просто офигеваю с бакалавра...

Ну и где я говорил что-то про ваше образование? Вы про мое говорите в каждом посте. Да не офигевайте. Цитату приведите.

Вы конечно можете снова начать оскорблять меня, говорить что я идиот, что я ничего не понимаю, опять приплести мое образование, но так и не ответить на вопросы, и не сказать как правильно, что вы и делаете. Безусловно это показывает то что вы очень умный, образованный и очень хороший специалист.
  • 0

#98
mergan

mergan
  • Свой человек
  • 730 сообщений

Конкретно цитаты. Перестаньте сыпать общими фразами. Расскажите, о многомудрый, что я такого сказал, на основании чего можно с уверенностью говорить что я не понимаю. Или заткнитесь

да каждая твоя фраза говорит о том, что ты не внимательно читаешь... а значит не правильно понимаешь...

зы: если говоря за это ветку... то даже не увидал, что требуется в условиях задачи... или к примеру к чему ваш детский код по выводу матрицы...


ну и чем стало страшнее работа StringGrid????

var
  x,y, intTemp : integer;
begin
  y := StringGrid1.RowCount - 1;
  for x := 0 to StringGrid1.ColCount - 1 do
  begin
	intTemp := strtoint(StringGrid1.Cells[x, 0]) * 2;
	StringGrid1.Cells[x, 0] := inttostr(strtoint(StringGrid1.Cells[x, y]) * 2);
	StringGrid1.Cells[x, y] := inttostr(intTemp);
  end;
end;


неужели только тем, что надо преобразовывать из числа в строку
  • 0

#99
Zulkar

Zulkar

    Читатель

  • В доску свой
  • 3 243 сообщений

если говоря за это ветку... то даже не увидал, что требуется в условиях задачи... или к примеру к чему ваш детский код по выводу матрицы...

Ок. признаю, прочитал последнюю просьбу. Там про StringGrid ни слова. Согласен, код простейший. Это плохо? Относится к выводу матрицы без использования vcl.

да каждая твоя фраза говорит о том, что ты не внимательно читаешь... а значит не правильно понимаешь...

Опять, "каждая фраза...." Ладно хоть про здесь пояснение дали. Спасибо.

неужели только тем, что надо преобразовывать из числа в строку

Тем что надо объяснять преподвателю что значит StringGrid1.Cells и что Cells - это property класса TStringGrid. Для человека, который не может написать такую прогу (не вас имею в виду, не переживайте), думаю это довольно сложно. Согласен, звучит довольно глупо, но тем не менее обучение пограмированию обычно начинают с турбо паскаля а не с дельфи.

Кстати вы забыли прописать проверку на то, является ли StringGrid1.Cells[x, 0] числом (то есть можно ли эту строку перевести в integer). :spy:
  • 0

#100
mergan

mergan
  • Свой человек
  • 730 сообщений

Кстати вы забыли прописать проверку на то, является ли StringGrid1.Cells[x, 0] числом (то есть можно ли эту строку перевести в integer). :spy:

данная проверка не нужна(в рамкой данной), так как заполнение идет всяко разно одними цифрами...
  • 0


Количество пользователей, читающих эту тему: 1

пользователей: 0, неизвестных прохожих: 1, скрытых пользователей: 0

Размещение рекламы на сайте     Предложения о сотрудничестве     Служба поддержки пользователей

© 2011-2022 vse.kz. При любом использовании материалов Форума ссылка на vse.kz обязательна.