Перейти к содержанию

TolkienDRR

Пользователи
  • Постов

    3 765
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные TolkienDRR

  1.    Йопта, вообще хз. Мне кажется такой поддержки не должно быть (хотя могу и ошибаться). Если таблица хотя бы на английском, то можно заюзать

    select *
    from table_name

    или

    select t.*
    from table_name t

       Не уверен, пробуй на работающей программке осуществить

    Добавлено спустя 9 минут 6 секунд:

       Мляяя, в шоке нах... на одном форуме нашел код и он нормально выполняется о_О:


    SELECT ДЕЛО.[шифр-абитуриент]
    FROM ДЕЛО;
    INSERT INTO АБИТУРИЕНТ ( [шифр-абитуриент] )

       Фига народ извращается, называть все на русском, да и еще с минусами =D Это как то совсем нехорошо... печалька я б сказал...

       payk, думаю поможет так:

    select "ФИО студента", Группа, Специальность, База, Статус
    from "Все студенты";

  2.    Faust, хз, когда устанавливал - монтировал образ демон тулзом (лайт), и сейчас когда играть надо - монтирую образ. Проблем не наблюдается. Возможно игра ждет диск в другом дисководе =) Попробуй отключи все остальные дисководы и запусти еще раз

  3. А где там указывается, из какой базы данных берется таблица? Значит все-таки нужно создать временную таблицу???
       Почитай немного мат.части по базам данных.

    О_о дык, ты мат.часть изучи да разбери, а скрипт ты тупо скопируешь да вставишь. Ничего судя по всему не прочитал из вышепосоветованного...

  4.    Vsadnik665, если совсем-совсем утрировать, база данных - это набор таблиц. Посему вопрос, у тебя много однотипных таблиц в базе данных или много баз данных с однотипной таблицей?

       Все решается одним скриптом, читать вот это http://www.firebirdsql.org/refdocs/langrefupd21-insert.html

  5. и ... неправильно!
       =D забавно учитывая
    Я поверхностно знаю базы данных.

    дык у тебя несколько таблиц в рамках одной базы данных. о каких

    Есть несколько баз
    ты говоришь?

    Если просто в одной бд надо создать новую таблицу для 2011 года то:

    Создаешь новую пустую таблицу для 2011 с полями:

    индекс - автоинкриментное (счетчик);

    такие же полями кроме индекса;

    поле для старого индекса.

    Далее добавляешь записи из таблицы для 2010.

    Одним запросом делается, копать в сторону create table и insert into.

    Добавлено спустя 2 минуты:

    Vsadnik665

    линк - ссылка, партиция - часть таблицы, выделяется по значение какого-либо поля.

  6.    Как вариант - сделать линки на каждую базу в одной экземпляре и нормально осуществить выборки =) Ну или экспорт/импорт таблиц осуществить, на каждый год по партиции =) Не понятна конечная цель - видимо сделать одну большую базу из кучи за предыдущие года?

  7.    Не понравился Лебедев, вся заслуга в этом бое - это лишь молодость и дисциплинированность. А в остальном - ну грязно ведет бой, по затылку часто бил, в конце совсем уж некрасиво повел, учитывая его слова перед боем о том, что Рой его кумир. Бить кумира в стоячем нокауте да и еще двойкой за 13 секунд до конца боя - это как по головам ходить. Плохие впечатления от нашего боксера. Бился бы с 30 летнием Роем - лежал бы смирно к раунду 5-ому.

       А Рой молодец, тот еще забористый старичок =D Хотя на мой взгляд ему нужно было остановиться куда раньше, а не становится проходным (хоть и очень дорогим) соперником.

  8. Ну да всё правильно

    хаха:

    Задан произвольный массив (n<100), выберите из него максимальное число.


    m, i, n: integer;
    a: array [1..99] of integer;
    begin
    write ('n = ');
    readln(n);
    if n = 1 then writeln('В массиве одно число и оно не может быть максимальным числом в массиве, ведь оно одно')
    else
    ...
    end.
    var

    извини конечно, но чушь пишешь.

    Добавлено спустя 1 минуту 24 секунды:

    А смысл вообще это делать? ошибка да ошибка! пох какая, пусть сам соображает что исправить

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

    Добавлено спустя 2 минуты 28 секунд:

    Только с нескольких заходов дошло зачем вообще нужно условие A<>M, и дошло ли вообще....

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

  9. скопируй, вставь и запусти =Р



    const n=20;

    var A:array[1..n] of integer;
    i:word;
    M,NiO,NiP,VpV:integer;

    BEGIN
    {-------------------------------------------------}
    clrscr;
    randomize;
    for i:= 1 to n do
    begin A[i]:=random(100)-50; write(A[i],' '); end;
    writeln;
    readkey;
    {-------------------------------------------------}
    M:=A[1]; NiP:=32767; NiO:=-32768; VpV:=-32768;
    for i:= 1 to n do
    begin
    if (i<>1) then
    if (A[i]>M) then begin VpV:=M; M:=A[i]; end
    else
    if (A[i]>VpV) then VpV:=A[i]; //удалил and(A[i]<>M)
    if (A[i]>0) then if (A[i] if (A[i]<0) then if (A[i]>NiO) then NiO:=A[i];
    end;
    writeln('Vtoroy po velichine:',VpV);
    writeln('Naimenshiy iz polojitelnih:',NiP);
    write('Naibolshiy iz otricatelnih:',NiO);
    readkey;
    END.
    uses crt;

    По идее мой первый код был и есть рабочий, только без проверок, а вот нахера ты свой написал...

    потому что мой рабочий и правильный (1ый в ветке) во всех случаях. а твои модификации я уже слабо смотрел, т.к. смысла не вижу разбираться в чужом, если с использованием 1 цикла мой верный. с использованием нескольких циклов задача вообще не имеет никакой сложности =)

    //add таки посмотрел последний твой код без тараканов:

    voland, если в массиве хотя бы одно положительное число или одно отрицательное число, то у тебя CP = 1 или CO = 1, тогда у тебя проверка

    if ((CP>1)and(CO>1))

    не сработает и вообще скажет, что массив не подходит.

    хотя массив a: a[1]=-1, a[2]=1 не подойдет по условиям, хотя

    а) наибольший элемент из отрицательных; -1

    б) наименьший элемент из положительных; 1

    в) второй по величине элемент. -1

    да и в целом, даже если массив: а = [-1,2,3,4,5,6] у тебя вылезет ошибка.

    да и в целом некорректный код, если нет отрицательных чисел - то должна быть ошибка "нет отрицательных" и при этом решить остальные подпункты. а у тебя алерт вылазит, если хоть по одному условию неверно, да и еще проверка кривая =D

  10. Ёб... а я писал что-то про производительность?!

       =D это было написано к сведению, а не тебе ))) твоего ника там не было и копираста твоего тоже )) так что не бздеть )

       voland, да действительно, максимальное учитывается, но все же лишняя проверка (A<>M) =Р

       К тому же, что за проверка a <> M, к любому моменту кроме переприсваивания М - a не равно M (это видно из условия).

    //add

    ну ты извращенец =D сейчас примерно глянул чего ты делаешь в процедуре - изврат какой то. докучи для читабельности всегда надо передавать параметр. да и вообще в памяти отложилось, что нехорошо изменять значение переменной, которую не передаешь в функции через var

    add//

       Даже мой (кажущийся мне длинным код) не так ужасен как твой =D К тому же алерты у тебя странные =Р Мой код рабочий и короткий, учитывает все что можно вытащить из задачи )) так что зачем было столько мучиться да и еще паскаль запускать =Р я так все написал )))

  11. 2)В заданном массиве A(N), все элементы которого попарно различны, найдите:

    а) наибольший элемент из отрицательных;

    б) наименьший элемент из положительных;

    в) второй по величине элемент.

       Максимальную производительность, учитывая всегда произвольный набор элементов [цифЕр] в массиве, даст квиксорт. Любое решение за один проход - заведомо неверно или же будет настолько заполнено иф-ами, что скорости не прибавит.

      if (i<>1)   then

        if (A>M) then begin VpV:=M; M:=A; end

        else

          if ((A>VpV)and(A<>M)) then VpV:=A;

    Первое условие if (i<>1) излишнее - в следующем условии оно дублируется if (A>M). К тому же не учтено, что первое число - максимальное.

    sja := 0;
    sjb := -1; //здесь -1 дабы отойти от холиваров про 0 положительное или не положительное число. поэтому будем считать 0 - положительным
    sjc := a[1];
    m := a[1];
    d := 65535;
    for i := 1 to n do begin
    if a[i] < 0 then
    if sja = 0 then sja := a[i]
    else if a[i] > sja then sja := a[i];
    if a[i] >= 0 then
    if sjb = -1 then sjb := a[i]
    else if a[i] < sjb then sjb := a[i];
    if a[i] > m then begin
    sjc := m;
    m := a[i];
    d := 0;
    end
    else if (d <> 0) and (a[i] < m) then
    if d < m - a[i] then d := m - a[i]
    end;
    if sja = 0 then writeln ('Отрицательных эл-тов нет в массиве')
    else writeln ('a - ', sja);
    if sjb = -1 then writeln ('Положительных эл-тов нет в массиве')
    else writeln ('b - ', sjb);
    if m = a[1] then sjc := m - d;
    if n = 1 then wirteln ('В массиве всего 1 элемент')
    else writeln ('c - ', sjc);

    вот такой вот изврат

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