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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 23.05.2010, 12:17   #1
x93
Пользователь
 
Регистрация: 24.03.2010
Сообщений: 12
Подмигивание Заполнить квадратную матрицу В(10,10) единицами в шахматном порядке, начиная с верхнего левого угла

Не могли бы помочь с задачкой?

1.Заполнить квадратную матрицу В(10,10) единицами в шахматном порядке, начиная с верхнего левого угла. Соседние клетки заполнить нулями.
x93 вне форума
Старый 23.05.2010, 12:48   #2
aggressor74
 
Регистрация: 23.05.2010
Сообщений: 6
По умолчанию

Помогите пожайлусто с задачей:
Дан двухмерный массив, заполненный нулями и единицами. Найти прямоугольник наибольшей площади, заполненный единицами.
(нужно написать прогу в С) ну или хотя бы блок-схему
aggressor74 вне форума
Старый 23.05.2010, 13:37   #3
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию

Для x93:
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Grids;

type
  TForm1 = class(TForm)
    Button1: TButton;
    StringGrid1: TStringGrid;
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
Var i,j:integer; B:array [1..10,1..10] of integer;
Begin
For i:=1 to 10 do
For j:=1 to 10 do
If i mod 2=1 then
begin
If j mod 2=1 then
B[i,j]:=1
else B[i,j]:=0;
end
else
If j mod 2=1 then
B[i,j]:=0
else B[i,j]:=1;
For i:=1 to 10 do
For j:=1 to 10 do
StringGrid1.Cells[i-1,j-1]:=inttostr(B[i,j]);
end;

end.
На дельфи.
Для aggressor74: прости с С не дружу.
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
ImmortalAlexSan вне форума
Старый 23.05.2010, 13:42   #4
aggressor74
 
Регистрация: 23.05.2010
Сообщений: 6
По умолчанию

ImmortalAlexSan, а на псевдо-коде или блок-схеме сможешь написать?буду очень благодаген
aggressor74 вне форума
Старый 23.05.2010, 14:05   #5
ImmortalAlexSan
Участник клуба
 
Аватар для ImmortalAlexSan
 
Регистрация: 13.01.2009
Сообщений: 1,353
По умолчанию

aggressor74 алгоритм:
1. Заполняется рандомно или в ручную ваш массив.
2. Перебираются все его элементы (от первого до максимума по строкам и по столбцам)
3. Так как перебор начинается с первого элемента, то в этом цикле вводится условие вида: если элемент[i,j]=1 то переходим к пункту 4.
4. Перебираем столбец i до первого нуля или до конца, как только это условие соблюдено, то увеличиваем j на один и опять перебираем до первого нуля или до конца и так до тех пор, пока не дойдемдо конца j или до 0. Но вот тут загвоздка, ведь может получиться и так:
1-1-1-1-0
1-1-0
1-1-1-0
0
Для того чтобы уже из выисленной области найти этот прямоугольник, нужно ввести ещё один перебор для каждой новой найденной единицы вниз...
Что-то в этом духе. Ну я по крайней мере так делал, нужно организовывать много циклов и в них проверки условий.
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
ImmortalAlexSan вне форума
Старый 23.05.2010, 14:23   #6
x93
Пользователь
 
Регистрация: 24.03.2010
Сообщений: 12
По умолчанию

Люди! Я конечно вас всех очень люблю и очень вам благодарна, но мне на ПАСКАЛЕ надо бы))))
x93 вне форума
Старый 23.05.2010, 14:30   #7
ROMA2PVT
ТАМБОВСКИЙ ВОЛК.
Участник клуба
 
Аватар для ROMA2PVT
 
Регистрация: 16.03.2010
Сообщений: 1,354
По умолчанию

А что мешает взять фрагмент из программы ImmortalAlexSan?
にんじゃ
ROMA2PVT вне форума
Старый 23.05.2010, 20:54   #8
x93
Пользователь
 
Регистрация: 24.03.2010
Сообщений: 12
По умолчанию

Дело в том, что я не знаю делфи. Помогите пожжжжалуйста на паскале, а то я горю 15 задач сделала, последняя осталась...
x93 вне форума
Старый 23.05.2010, 20:59   #9
profi
Участник клуба Подтвердите свой е-майл
 
Регистрация: 19.11.2007
Сообщений: 1,022
По умолчанию

x93 если ты не знаешь, что Delphi это и есть Pascal, тогда как же ты предыдущие задачи сделала, точнее сказать сделали . ImmortalAlexSan уже даже решил давно. Даже на код можно взглянуть
Код:
procedure TForm1.FormCreate(Sender: TObject);
Var i,j:integer; B:array [1..10,1..10] of integer;
Begin
For i:=1 to 10 do
For j:=1 to 10 do
If i mod 2=1 then
begin
If j mod 2=1 then
B[i,j]:=1
else B[i,j]:=0;
end
else
If j mod 2=1 then
B[i,j]:=0
else B[i,j]:=1;
For i:=1 to 10 do
For j:=1 to 10 do
StringGrid1.Cells[i-1,j-1]:=inttostr(B[i,j]);
end;
и понять, что это Pascal

Последний раз редактировалось profi; 23.05.2010 в 21:04.
profi вне форума
Старый 23.05.2010, 21:40   #10
ROMA2PVT
ТАМБОВСКИЙ ВОЛК.
Участник клуба
 
Аватар для ROMA2PVT
 
Регистрация: 16.03.2010
Сообщений: 1,354
По умолчанию

x93 Ну помощь то ещё нужна?
にんじゃ

Последний раз редактировалось ROMA2PVT; 23.05.2010 в 21:44.
ROMA2PVT вне форума
Закрытая тема


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заполнить матрицу ЛП, от левого верхнего угла по диагонали: вправо - вверх. O.G.O Общие вопросы C/C++ 4 11.06.2009 01:10
Задача на квадратную матрицу.. Razorishe Помощь студентам 4 17.03.2009 08:52
VBA построить квадратную матрицу Марат707 Microsoft Office Word 11 09.12.2008 07:31