Ответы пользователя по тегу Программирование
  • Как правильно называть массивы?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    Во множественном числе, естественно. Интуитивно становится понятно, что там не один элемент содержится. А увидишь ты перед собой переменную order и будешь думать, что там описан один объект. Будет сюрприз, когда окажется, что это массив.
    Ответ написан
    Комментировать
  • Уникальные функции или большее количество?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    Можете сделать одну функцию, куда в качестве параметра передавать ассоциативный массив. Внутри функцию в зависимости от того, какие параметры переданы, добавлять условия в WHERE.
    Ответ написан
    4 комментария
  • Хранение массива в базе данных?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    Ну по-разному хранят... Обычно это куча связанных таблиц. Например, есть таблицы "Товары" и "Свойства". Связь "многие-ко-многим", т.е. есть еще результирующая таблица ТоварыСвойства, которая выглядит как-то так: id, id_товара, id_свойства. И таких таблиц в БД пруд пруди... Как хочешь так и хранишь.
    Ответ написан
    6 комментариев
  • Как мне поступить с образованием после 9 класса?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    Блин, да если ты это все знаешь, то без проблем поступишь на бюджет почти в любой хороший технический университет. Если вся проблема в "не хочу в армию", то поступай в университет попроще на бюджет: там тебя не будут заставлять посещать все занятия, будет время делать, что хочешь...
    П.С. Да, больше похоже на "посмотрите какой я крутой в 16 лет", а не на нормальный вопрос. Я в шестнадцать лет херней страдал, но все равно на бюджет устроился спокойно. И на пары не ходил, но закончил с красным дипломом. В Сибири, конечно. Времени на самообразование навалом было.
    Ответ написан
    Комментировать
  • Как правильно записать SQL запрос?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    Синтаксис MySQL.
    Вот структура таблиц и запрос. Еще нужно создать дополнительную таблицу для возрастов.
    CREATE TABLE db_person
    (
    id integer,
    stat integer
    );
    
    CREATE TABLE db_person_fio
    (
    id_person integer,
    dr date,
    w integer
    );
    
    CREATE TABLE db_person_ages
    (
    age integer
    );
    
    INSERT INTO db_person_ages(age) VALUES (0);
    INSERT INTO db_person_ages(age) VALUES (1);
    INSERT INTO db_person_ages(age) VALUES (2);
    INSERT INTO db_person_ages(age) VALUES (3);
    INSERT INTO db_person_ages(age) VALUES (4);
    INSERT INTO db_person_ages(age) VALUES (5);
    INSERT INTO db_person_ages(age) VALUES (6);
    INSERT INTO db_person_ages(age) VALUES (7);
    INSERT INTO db_person_ages(age) VALUES (8);
    INSERT INTO db_person_ages(age) VALUES (9);
    INSERT INTO db_person_ages(age) VALUES (10);
    
    SELECT CONCAT(age*11,'-',age*11+10) as descr,
    	   IFNULL(man,0) as man,
           IFNULL(woman,0) as woman
    FROM db_person_ages ages
    LEFT JOIN 
    (
    SELECT FLOOR(timestampdiff(YEAR,f.dr,CURRENT_DATE)/11) as diff,
    	   SUM(CASE WHEN f.w=1 THEN 1 ELSE 0 END) as man,
           SUM(CASE WHEN f.w=0 THEN 1 ELSE 0 END) as woman
    FROM db_person p, db_person_fio f
    WHERE p.id = f.id_person
    AND p.stat>0
    GROUP BY 1
    ) t ON ages.age = t.diff
    Ответ написан
  • Алгоритм поиска последовательности выпадения числа. Возможно ли такое реализовать?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    Используйте экстраполяцию. Получите таблицу со значениями x | f(x) = y, где x-время, y-число, f-искомая функция. Можете попробовать разные варианты: линейную функцию, экспоненциальную, степенную и т.д. Какая лучше будет ложиться, ту и исследуйте. Просто далеко не факт, что там лежит что-то настолько простое, чтобы подобрать через экстраполяцию.
    Ответ написан
    Комментировать
  • Сортировка элементов из одной таблице, на основе данных в другой?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    SELECT RoomId
    FROM usersRoom
    GROUP BY RoomId
    ORDER BY COUNT(*) DESC, RoomId
    Ответ написан
    Комментировать
  • Как заполнить массив значением enum?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    stateOrder[] arrayOfStates = new stateOrder[1] {stateOrder.Sent};
    Ответ написан
    1 комментарий
  • Генерация случайного математического выражения на основе результата?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    Можете посмотреть такой пример функции.
    //функция возвращает список делителей числа
            public static List<int> getDenaminators(int num)
            {
                List<int> result = new List<int>();
                for (int i = 2; i < num - 1; i++)
                {
                    if (num % i == 0)
                        result.Add(i);
                }
                return result;
            }
            public static string Func(int num, int count)
            {
                List<int> deliteli = getDenaminators(num);
                Random rnd = new Random();
                int key;
                string numString = "", operString = "", resultString = "";
                int nextVal = 0;
                
                if (count == 0)
                    return num.ToString();
                if (deliteli.Count > 0)
                    key = rnd.Next(1, 5);
                else
                    key = rnd.Next(1, 4);
                
                switch (key)
                {
                    case 1:
                        {
                            nextVal = rnd.Next(1, num);
                            numString = (num - nextVal).ToString();
                            operString = "+";
                        } break;
                    case 2:
                        {
                            nextVal = rnd.Next(1, num);
                            numString = (num + nextVal).ToString();
                            operString = "-";
                        } break;
                    case 3:
                        {
                            nextVal = rnd.Next(1, 11);
                            numString = (num * nextVal).ToString();
                            operString = "/";
                        } break;
                    case 4:
                        {
                            nextVal = deliteli[rnd.Next(0, deliteli.Count)];
                            numString = (num / nextVal).ToString();
                            operString = "*";
                        } break;
                }
                if (count == 1)
                    resultString = String.Format("{0} {1} {2}", numString, operString, Func(nextVal, count - 1));
                else
                    resultString = String.Format("{0} {1} ({2})", numString, operString, Func(nextVal, count - 1));
                return resultString;
            }
    
            static void Main(string[] args)
            {
                Console.WriteLine(Func(1024, 6));
            }
    Ответ написан
    Комментировать
  • Легально ли разглашать пароли от точек доступа wifi?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    Если у вас будут данные, по которым вы сможете идентифицировать пользователя, оставившего пароль, а сами в соглашении укажете, что за информацию, оставленную на сайте несет пользователь, то вы, в принципе, чисты перед законом. Просто по запросу владельцев wi-fi вы должны будете удалить такую информацию с сайта, а по запросу органов еще и предъявлять данные о пользователе, информацию на вашем сайте разместившем. Если у вас размещают одни "анонимусы", то спрос будет с вас, как с владельца ресурса. Где-то недавно на хабре обсуждалось.
    Ответ написан
    Комментировать
  • Как реализовать выгрузку данных из формы на сайте в документ .doc?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    Добрый день!
    Если на сервере установлен MS Office, то установлены и библиотеки для работы с ним (Excel.Interop, Word.Interop и т.д.)
    Алгоритм следующий:
    1) Заполняется форма на стороне клиента и данные отправляются на сервер;
    2) На сервере создается экземпляр документа Word, в него заносится информация из шаблона и заполняется данными из формы;
    3) Получившийся файл Word НЕ сохраняется на сервере, а передается обратно клиенту в потоке, в котором, опять же, указываем через что его следует открывать на стороне клиента.

    Если же нет MS Office на сервере, то можно его самому собрать, т.к. .docx есть ни что иное, как набор упорядоченных xml-файлов. Можете свой шаблон открыть через архиватор и убедиться в этом, а уж если покопаться во внутренностях этих файлов, то можно найти какие данные в xml нужно поменять.
    Алгоритм:
    1) Получаем данные с формы;
    2) Копируем шаблон через архиватор (7zip, например), открываем необходимые xml-файлы и подменяем в них информацию на необходимую;
    3) выгружаем файл в поток, не забыв уничтожить измененную копию шаблона (ну или почистить память, если вы физически нигде ничего не сохраняли);
    4) передаем поток клиенту.
    Ответ написан
    4 комментария
  • Как упростить обработку очень большой формы?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    Для рядовых пользователей можно эту форму-фильтр упростить. Для продвинутых предоставить возможность самим писать фильтры на псевдоязыке, используя "И/ИЛИ", "СОДЕРЖИТ" и пр. Затем просто строку парсите, разбираете и составляете нормальный запрос.

    Или же собираете всю инфу с форму в xml и отправляете в БД, где разбираете на составляющие. При изменении формы (добавлении новых столбцов) нужно будет лишь изменять процедуру разбора в БД. А если напишите универсальную, то и этого делать не придется.
    Ответ написан
    Комментировать
  • Как загрузить html в html?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    Создайте объект DOMDocument.3.0. Загрузите в него свой html-файл. Через innerHTML вставьте содержимое объекта в любой DOM-элемент.
    Ответ написан
    Комментировать
  • Вы тоже постоянно всё забываете из программирования?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    Я тоже все постоянно забываю. Причем иногда мне кажется, что то, что я писал года два-три назад "красивее" и "правильнее" того, что я пишу сейчас. Хотя должно быть наоборот)
    Открываю свой код и поражаюсь: как будто кто-то другой писал...
    Ответ написан
    2 комментария
  • Стоит ли смотреть чужой код, разбирать и затем воспроизводить его самому на память для учебы?

    @JuniorNoobie
    Сижу в поддержке, пишу мелкие проекты
    Все пишут, что полезно. Но это если база знаний есть более-менее твердая. Иначе больше времени будешь проводить в поисковике, нежели в дебрях кода. Вообще, лучше найти исходники того, с интерфейсом чего ты знаком, чтобы не тратить много времени на понимание. Игрушку какую-нибудь простенькую, к примеру.
    Ответ написан
    2 комментария