Перейти к публикации
  • Сейчас на странице   Всего пользователей: 2   (0 пользователей, 2 гостя)

Hed-kun

Программирование, т. 5.1.

Рекомендованные сообщения

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

то, что эти десять строк за тебя сгенерирует ide - как-то похуй?


Колы я выросту - то хочу буты такым як я

5c8bbc85b99e.gif

 

годные смайлы

Поделиться сообщением


Ссылка на сообщение

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

это кто и почему он должен меня беспокоить с моей малюсенькой игрой :)


Безделье суть ересь.

Поделиться сообщением


Ссылка на сообщение

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

это кто и почему он должен меня беспокоить с моей малюсенькой игрой :)

Это мифическое существо обитающее только в просторах фантазий стартаперов, и кошмарных снов системных администраторов.


Мобильное приложение для продоты https://play.google....id=ru.prodota.m

Поделиться сообщением


Ссылка на сообщение

Вот он, хайлоад стартаперской мечты!

 

Смешная нагрузка, но сервер падает, а все почему? Потому что админ - спай.


Мобильное приложение для продоты https://play.google....id=ru.prodota.m

Поделиться сообщением


Ссылка на сообщение

Могу бекенд писать на чем угодно, но пишу на пхп, потому что под него есть не менее крутые фреймворки. И я знаю, что если проект разрастется, то он не станет заложником технологии, как это часто бывает с рор (твиттер, групон...)

 

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

Поделиться сообщением


Ссылка на сообщение

Привет ребят.

Задали написать программу на Delphi, хотя до этого учил плюсы.

 

Суть задания:

нужно в стрингриде написать своё имя и фамилию с помощью заполнения ячейки, т.е.

1111

1

11

11 - буква С, и такими вот "буквами" заполнить эту табличку, чтобы в результате получилась имя и фамилия.

11

1

1111

Поделиться сообщением


Ссылка на сообщение
(изменено)

Не повезло тебе. Или хардкодить по букве, или выебываться с определением заполенности ячейки, тестируя какой-нибудь шрифт.


Изменено пользователем Tinplz

Поделиться сообщением


Ссылка на сообщение

что значит "написать"?

 

нужно просто написать и всё? или всё-таки уметь (грубо говоря) генерировать?

 

если первое, то в чём проблема-то?

Поделиться сообщением


Ссылка на сообщение

что значит "написать"?

 

нужно просто написать и всё? или всё-таки уметь (грубо говоря) генерировать?

 

если первое, то в чём проблема-то?

просто заполнить нужные ячейки

Поделиться сообщением


Ссылка на сообщение

заполнить из кода?

да

объявить процедуру для каждой буквы, в моём случае их 10

Поделиться сообщением


Ссылка на сообщение

тогда тебе повезло.

Поделиться сообщением


Ссылка на сообщение

тогда тебе повезло.

возможно, но как делать я не понимаю

Поделиться сообщением


Ссылка на сообщение

тогда тебе повезло.

возможно, но как делать я не понимаю

Вручную захардкодить 10 букв. Что бы писало с данной позиции нужную букву. И потом 10 раз сместить каретку и вызвать методы для каждой буквы поочереди.

Конечно, если бы это делал я, то просто бы поключил какую-нибудь FreeType, в рантайме бы отрендерил слово в битмап без сглаживания, и определял бы заполненность конкретных ячеек. Потом бы просто записал в грид.

Но ты не потянешь такое, поэтому заполняй вручную.

Поделиться сообщением


Ссылка на сообщение
(изменено)

тогда тебе повезло.

возможно, но как делать я не понимаю

Вручную захардкодить 10 букв. Что бы писало с данной позиции нужную букву. И потом 10 раз сместить каретку и вызвать методы для каждой буквы поочереди.

Конечно, если бы это делал я, то просто бы поключил какую-нибудь FreeType, в рантайме бы отрендерил слово в битмап без сглаживания, и определял бы заполненность конкретных ячеек. Потом бы просто записал в грид.

Но ты не потянешь такое, поэтому заполняй вручную.

например я хочу сделать букву А

procedure Tform.A (x,y:integer);

begin

 

 

 

 

А дальше я не могу сообразить, как мне её составить

поможете понять, как же "рисовать" хотя бы одну букву, с другими я думаю разберусь


Изменено пользователем Essero

Поделиться сообщением


Ссылка на сообщение

заполнить из кода?

да

объявить процедуру для каждой буквы, в моём случае их 10

ну если из кода, то алгоритм предельно прост

 

берёшь буквы своей фамилии и на каждую букву делаешь числовую матрицу из 1 или 0 (можно булевую, но с числами проще)

 

и заполняешь её прям в коде чтоб матрица была такой (все буквы офк одинаковой высоты)

001111
010000
110000
110000
110000
010000
001111

как её объявлять/заполнять в коде - вопрос не ко мне, я в дельфи не шарю :trollface:

в си-шарпе есть двумерные массивы - int[,]

есть ещё массивы массивов, та же матрица считай - int[][]

 

потом считаешь сколько тебе нужно букв, на каждую букву выделяешь длинну матрицы по X + 1 и строишь от этого стринггрид

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

grid.Ширина = ((6 + 1) * 8) - 1;

 

потом делаешь цикл на кол-во букв

не знаю нахуй тебе функцию на каждую букву делать, можно заполнение буквы делать в одном методе, который будет гибким и подходить под любую букву при условии одинаковой высоты

 

в нём прогоняешь матрицу каждой буквы циклами присваивая 1 тем ячейкам стринггрида которые должны быть заполнены

 

т.е. что-то типа

void FillLetter(int[][] letter, int startingPosition)
{
 for (int y = 0; y < letter.LengthY; y++)
 {
for (int x = 0; x < letter.LengthX; x++)
{
  grid[x + startPosition, y] = letter[x][y]; //или чтоб не заполнять нули if (letter[x][y] == 1) grid[x + startPosition, y] = letter[x][y];
}
 }
}

начиная со второй буквы нужно определять стартовую позицию, это будет длинна всех уже записаных букв + кол-во букв (для пробелов между ними)

 

т.е. метод вызывается из такого кода

int startPosition = 0;
// предположим что матрицы с буквами и вообще вся нужная инфа по слову уже где-то есть
for (int i = 0; i < длинна_слова; i++)
{
 int[][] letter = //тоже сам придумай где хранить буквы и как их оттуда брать
 FillLetter(letter, startPosition);
 startPosition += (letter.LengthX + 1);
}

 

easy VDsluaX.gif

Поделиться сообщением


Ссылка на сообщение

тогда тебе повезло.

возможно, но как делать я не понимаю

Вручную захардкодить 10 букв. Что бы писало с данной позиции нужную букву. И потом 10 раз сместить каретку и вызвать методы для каждой буквы поочереди.

Конечно, если бы это делал я, то просто бы поключил какую-нибудь FreeType, в рантайме бы отрендерил слово в битмап без сглаживания, и определял бы заполненность конкретных ячеек. Потом бы просто записал в грид.

Но ты не потянешь такое, поэтому заполняй вручную.

например я хочу сделать букву А

procedure Tform.A (x,y:integer);

begin

 

 

 

 

А дальше я не могу сообразить, как мне её составить

поможете понять, как же "рисовать" хотя бы одну букву, с другими я думаю разберусь

относись к стринггриду как к матрице, допустим, 10х1000 элементов.

первая буква у тебя будет в 1:11 столбцах, и в 1:9 (допустим) строках.

вторая в 1:11 столбцах и в 11:19 строках

с каждой буквой смещаешь этак на 2 ячейки.

 

А вообще я бы на твоем месте наебал систему. Просто бы написал считыватель текстового файла в стринггрид, а там бы уже буквы писал )

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...