Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.10.2016, 01:12   #1
Moraine93
Пользователь
 
Регистрация: 23.10.2016
Сообщений: 57
По умолчанию Очень нужно решение этой задачки, код и блок схему

Здравствуйте, помогите пожалуйста.

В соответствии с вариантом создать программный проект отображения средствами компонента StringGrid матрицы заданного размера. Элементы матрицы формируются генератором случайных чисел в диапазоне -100..100. Занесение исходных значений в матрицу производится по двойному щелчку мыши. Если в матрице находится несколько искомых значений, то все они выделяются требуемым образом.

Дана целочисленная матрица {Aij} i=1..n, j=1..m (n,mє(7..10)). Конкретный размер задается опциями главного меню (отдельно столбцы и строки). По команде контекстного меню строка и столбец, на пересечении которых находится наименьший элемент, выделяется разноцветными рамками.
Moraine93 вне форума Ответить с цитированием
Старый 23.10.2016, 03:21   #2
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

1) Что ты уже успела сделать к этому моменту? Ты хочешь, чтобы за тебя все сделали или готова тоже подключиться к работе? Твой уровень программирования какой?

2) Я так понял, массив "А" имеет динамическую природу... Вы такое изучали?
Посмотрев внимательно на нижеприведенную картинку, скажи мне как нужно "оформить массив А".

6.jpg


3) Перечитав информацию о псевдослучайных числах ещё раз, скажи как генерировать число от -100 до 100.

7.jpg


4) Все эти щелчки мыши, вся эта раскраска... потом разберём.
ura_111 вне форума Ответить с цитированием
Старый 23.10.2016, 14:59   #3
Moraine93
Пользователь
 
Регистрация: 23.10.2016
Сообщений: 57
По умолчанию

Готова подключиться. Delphi ранее не проходился. Ранее проходился С и PHP.
n и m нужно ввести с помощью главного меню.
var
A:array [0..n],[0..m] of integer;
i,j:integer;
begin
for i := 0 to n do
for j := 0 to 9 do
A[i,j]:=Random(-100,100);
end;
Вложения
Тип файла: rar 1.rar (950 байт, 14 просмотров)
Moraine93 вне форума Ответить с цитированием
Старый 23.10.2016, 15:13   #4
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Ладно давай поработаем вместе.
Ты в чём программируешь?

1) Динамический массив не описала.
2) А "Random"? В примере от 1-го числа, а у тебя 2-а (я не знаю можно ли так). Но если по примеру делать, тогда:

Random (100) - 100;

Хотя нет, тогда получится от -100 до 0.

Понимаешь куда двигаться надо? - Ну ладно, потом придумаем.

А вот придумал.

Код:
a=Random (200);
if(a>100) {a=(-1)*(a-100);}
Получается: 0 до 100
а если сгенерировало больше 100, тогда, например:
Код:
(-1)*(103-100)= -3
...........................
(-1)*(133-100)= -33     
...........................      
(-1)*(200-100)= -100
p.s.: Moraine93, если честно я тоже не знаю делфи (изучал С++ и Си); ну ничего, будем вместе изучать (я думаю там не сложно).

Последний раз редактировалось Аватар; 01.11.2016 в 10:39.
ura_111 вне форума Ответить с цитированием
Старый 23.10.2016, 16:36   #5
Moraine93
Пользователь
 
Регистрация: 23.10.2016
Сообщений: 57
По умолчанию

Delphi 7.
Ни чего страшного, как говорится одна голова хорошо, а две лучше.

Последний раз редактировалось Moraine93; 23.10.2016 в 16:43.
Moraine93 вне форума Ответить с цитированием
Старый 23.10.2016, 17:34   #6
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Скачал и установил Делфи 7...

По двум файлам я не смог открыть твой проект. Ты не мог бы пересохранить весь проект (вот экспериментировал с сохранением и открытием проекта и выявил, что нужно выбрать "сохранить проект как"; а ты что выберал?):

6.jpg

Посмотри сколько файлов!

Кстате, а сроки у тебя какие?

Последний раз редактировалось Аватар; 01.11.2016 в 10:39.
ura_111 вне форума Ответить с цитированием
Старый 23.10.2016, 18:30   #7
Moraine93
Пользователь
 
Регистрация: 23.10.2016
Сообщений: 57
По умолчанию

до 29 октября
Вложения
Тип файла: rar 1.rar (3.5 Кб, 12 просмотров)
Moraine93 вне форума Ответить с цитированием
Старый 23.10.2016, 19:19   #8
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

a:=Random(201)-100; --> -100<=a<=100
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 23.10.2016, 19:21   #9
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Открыл проект нормально.

1) Скажи мне, зачем тебе кнопки в проекте?

Вот попробывал заполнить массив. Вроде получилось. И ты попробуй.


Код:
var
   x, y : integer;
begin
   // Задаем число столбцов и строк таблицы
   StringGrid1.ColCount := 10;
   StringGrid1.RowCount := 10;

   // Задаем шируну и высоту ячеек
   StringGrid1.DefaultColWidth := 30;
   StringGrid1.DefaultRowHeight:= 30;

   // раставляем цифры от 1 до 9 в
   // горизонтальной области заголовка
   for x := 1 to StringGrid1.ColCount - 1  do
    StringGrid1.Cells[x, 0] := IntToStr(x);

   // растравляем цифры от 1 до 9 в
   // вертикальной области заголовка
   for y := 1 to StringGrid1.ColCount - 1  do
    StringGrid1.Cells[0, y] := IntToStr(y);

  // выводим результаты умножения в ячейки таблицы
   for x := 1 to StringGrid1.ColCount - 1  do
    for y := 1 to StringGrid1.RowCount - 1 do
    StringGrid1.Cells[x, y] := IntToStr(x*y);
end;

А ну сделай вот что:

6.jpg


62.jpg



Ну ты понял. В примере заполнение идет

Код:
IntToStr(x*y);
а тебе надо случайно.

2) Пока ты это пробуешь, я поищу описание обработчика 2-го клика. (понимаешь в чём "подвох" программы: когда ты пытаешься нажать 2-а клика - ты же сначало делаешь 1-н клик и... ещё 1-н. По крайней мере так воспринимает твои действия программа)...

Ладно что нибудь придумаем.

p.s.1: а кстате, Аватар вроде прав

Код:
a:=Random(201)-100; --> -100<=a<=100
p.s.2: пиши, что получилось, а что - нет.

Последний раз редактировалось ura_111; 23.10.2016 в 19:56.
ura_111 вне форума Ответить с цитированием
Старый 23.10.2016, 19:44   #10
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Усложню задачу (дело в том, что нам нужны обработчики всех пунктов меню, поэтому):

7.jpg


Только у тебя будет случайные числа в ячейках. Матрицу "A" пока не создавай (чую я она будет динамической (переменной величины (ты читала самую 1-ю мою фотку?)), а значит не всё с ней будет так просто).

Т.е. у тебя будет (на примере п.меню 7)

8.jpg

Последний раз редактировалось ura_111; 23.10.2016 в 19:50.
ura_111 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
программирование блок схема. пожалуйста, нарисуйте блок схему. очень срочно нужно! Bogdan96 Помощь студентам 4 22.09.2015 09:33
Pascal ABC(нарисуйте пожалуйста блок-схему, очень нужно) Deril Паскаль, Turbo Pascal, PascalABC.NET 2 05.01.2015 10:18
помогите пожалуйста написать решение задачи и блок схему к ней очень нужно( Alexandr1806 Помощь студентам 1 16.06.2014 22:31
помогите пожалуйста очень нужно решение задачки Satenka Microsoft Office Excel 4 28.05.2014 21:57
Нарисуйте пожалуйста блок-схему лёгкой задачки, не знаю как,очень нужно... prikolist Паскаль, Turbo Pascal, PascalABC.NET 2 28.11.2008 15:27