разаработайте програму которая...

Тема в разделе "Информатика", создана пользователем HavChik, 19 мар 2010.

  1. HavChik

    HavChik New Member

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

    666_grodno New Member

    name = {}
    name[0]=gets
    name[1]=gets
    name[2]=gets

    p name

    for i in 0..26
        s=("00"+i.to_s(3)).slice(-3,3)
        if (s[0]==s[1]) or (s[0]==s[2]) or (s[2]==s[1])
            next
        end
        p "sen = " + name[s[0].to_i] + " " + name[s[1].to_i] + " " + name[s[2].to_i]
    end
     
     уверсальный вариант
    # перестановки без повторений -------------------------------------------------
    name = {}
    Kolvo_El = 11 # система счисления
    Kolvo_v_Gruppe = 3
    Kolvo_v_Gruppe =  (Kolvo_v_Gruppe > Kolvo_El) ? Kolvo_El : Kolvo_v_Gruppe
    n = 0

    st = "0"

    for i in 0..(Kolvo_El - 1)
        name=(i).to_s(Kolvo_El)
        st = st + st
    end

    p name

    for i in 0..((Kolvo_El ** Kolvo_v_Gruppe) - 1)
        s=(st+i.to_s(Kolvo_El)).slice(-Kolvo_v_Gruppe, Kolvo_v_Gruppe)
        # p s

        double = false
        for i in 0..s.length-2
            for j in i+1..s.length-1
                double = (double or (s==s[j]))
            end
        end

        if not double
            element = ""
            for i in 0..Kolvo_v_Gruppe - 1
                element = element + name[s.to_i(Kolvo_El)] + " "
            end
            p "sen = " + element
            n = n + 1
        end
    end
    p n
    # --------------------------------------------------------------------------


     

Поделиться этой страницей

Наша группа