Dada uma sequência que termina em "er", "ir" ou "re" (o "infinitivo"), produza a conjugação completa da sequência como um verbo francês nos sete tempos simples. Para cada tempo (na ordem dada abaixo), imprima cada pronome sujeito na seguinte ordem: je , tu , il , elle , nous , vous , ils , elles ; seguido de um espaço, o verbo conjugado de acordo com esse pronome e uma nova linha. Se o verbo começa com uma vogal ( aeiou
) ou h
, je se torna j ' e o espaço é omitido.
Em todos os exemplos, usarei os verbos regulares exister , invertir e rendre para demonstrar. O francês possui muitos verbos irregulares, que ignoraremos para facilitar a especificação e o desafio.
Os tempos
Tempo presente
Remova er / ir / re do infinitivo e adicione os seguintes finais:
- er : j'exist e , tu existem es , il existir e , elle existir e , existem nous ons , vous exist ez , ils existem ent , existem elles ent .
- IR : j'invert é , tu invertido é , il invertido isso , elle invert -la , inverta nous issons , vous invertido issez , ils inverter issent .
- re : je rend s , tu rend s , il rend, elle rend (sem finais), nous rend ons , vous rend ez , ils rend ent , elles rend ent .
Imperfeita
Remova er / ir / re do infinitivo e adicione os seguintes finais:
- er e re : j'exist ais , tu existir ais , IL existir ait , existem elle ait , existem nous iões , vous existir IEZ , ils existir aient , existem Elles aient .
- IR : j'invert issais , tu invertido issais , il invertido issait , elle invertido issait , inverta nous issions , vous invertido issiez , ils inverter issaient .
Passado simples
Remova er / ir / re do infinitivo e adicione os seguintes finais:
- er : j'exist ai , tu existir como , IL existe um , elle existir um , existem nous âmes , existem vous ates , ils existir erent , existem Elles erent .
- ir e re : rend je é , tu rend é , il rasgar -lo , elle rasgar -lo , rend nous Imes , rend vous ITES , ils rend irent , elles rend irent .
Futuro
Para todos os verbos, adicione essas terminações diretamente ao infinitivo (embora re verbos soltar a e ):
- j'invertir ai , tu invertir como , il invertir um , elle invertir um , nous invertir ons , vous invertir ez , ils invertir ont , elles invertir ont .
Condicional
Para todos os verbos, adicione essas terminações diretamente ao infinitivo (embora re verbos soltar a e ):
- j'invertir ais , tu Invertir ais , IL Invertir ait , elle Invertir ait , Invertir nous iões , vous Invertir IEZ , ils Invertir aient , Elles Invertir aient * .
Presente (Subjuntivo)
Remova er / ir / re do infinitivo e adicione os seguintes finais:
- er e re : j'exist e , tu existir es , IL existir e , elle existir e , existem nous iões , vous existir IEZ , ils existir ent , existem Elles ento .
- IR : j'invert isse , tu invertido isses , il invertido isse , elle invertido isse , inverta nous issions , vous invertido issiez , ils inverter issent , elles inverter issent .
Subjuntivo imperfeito
Remova er / ir / re do infinitivo e adicione os seguintes finais:
- er : j'exist asse , tu existir burros , IL existir AT , existem elle AT , existem nous Assions , vous existir assiez , ils existir concordância , existe Elles consentimento .
- IR e re : je rend isse , tu rend isses , IL rend -lo , elle rend -lo , rend nous issions , vous rend issiez , ils rend issent , Elles rend issent .
Saída de amostra
Para um verbo eraller
, sua saída deve ser:
j'alle
tu alles
il alle
elle alle
nous allons
vous allez
ils allent
elles allent
j'allais
tu allais
il allait
elle allait
nous allions
vous alliez
ils allaient
elles allaient
j'allai
tu allas
il alla
elle alla
nous allâmes
vous allâtes
ils allèrent
elles allèrent
j'allerai
tu alleras
il allera
elle allera
nous allerons
vous allerez
ils alleront
elles alleront
j'allerais
tu allerais
il allerait
elle allerait
nous allerions
vous alleriez
ils alleraient
elles alleraient
j'alle
tu alles
il alle
elle alle
nous allions
vous alliez
ils allent
elles allent
j'allasse
tu allasses
il allât
elle allât
nous allassions
vous allassiez
ils allassent
elles allassent
Para um verbo iravoir
, sua saída deve ser:
j'avois
tu avois
il avoit
elle avoit
nous avoissons
vous avoissez
ils avoissent
elles avoissent
j'avoissais
tu avoissais
il avoissait
elle avoissait
nous avoissions
vous avoissiez
ils avoissaient
elles avoissaient
j'avois
tu avois
il avoit
elle avoit
nous avoîmes
vous avoîtes
ils avoirent
elles avoirent
j'avoirai
tu avoiras
il avoira
elle avoira
nous avoirons
vous avoirez
ils avoiront
elles avoiront
j'avoirais
tu avoirais
il avoirait
elle avoirait
nous avoirions
vous avoiriez
ils avoiraient
elles avoiraient
j'avoisse
tu avoisses
il avoisse
elle avoisse
nous avoissions
vous avoissiez
ils avoissent
elles avoissent
j'avoisse
tu avoisses
il avoît
elle avoît
nous avoissions
vous avoissiez
ils avoissent
elles avoissent
Para um re verbo faire
, sua saída deve ser:
je fais
tu fais
il fai
elle fai
nous faions
vous faiez
ils faient
elles faient
je faiais
tu faiais
il faiait
elle faiait
nous faiions
vous faiiez
ils faiaient
elles faiaient
je faiis
tu faiis
il faiit
elle faiit
nous faiîmes
vous faiîtes
ils faiirent
elles faiirent
je fairai
tu fairas
il faira
elle faira
nous fairons
vous fairez
ils fairont
elles fairont
je fairais
tu fairais
il fairait
elle fairait
nous fairions
vous fairiez
ils fairaient
elles fairaient
je faie
tu faies
il faie
elle faie
nous faiions
vous faiiez
ils faient
elles faient
je faiisse
tu faiisses
il faiît
elle faiît
nous faiissions
vous faiissiez
ils faiissent
elles faiissent
(Essas não são as verdadeiras conjugações dos verbos acima. Na realidade, são altamente irregulares.)
Isso é código de golfe. A finalização mais curta vence.
fonte
manger
,finir
e(entre)prendre
como exemplo deve ser melhor, parece que você tomou intencionalmente verbos irregulares :)(entre)prendre
é irregular. Então talvez ementendre
vez disso. (Mas eu concordo que os exemplos atuais horrível se acontecer de você saber francês.)(entre)prendre
era irregullarentendre
é realmente melhorRespostas:
Carvão ,
488276 bytesExperimente online! Link é a versão detalhada do código. Explicação:
Uma cadeia compactada muito longa é dividida em parágrafos, cada parágrafo representando as terminações de um final de verbo específico. A desinência apropriada é selecionada dependendo da segunda última letra do verbo. O parágrafo é dividido em linhas que representam os finais de cada tempo. Os tempos são então repetidos.
Faça um loop sobre as três pessoas e seus plurais.
Faça um loop sobre os pronomes para essas pessoas (a terceira pessoa tem dois gêneros), mas invólucro especial,
["j'"]
quando necessário.Imprima o pronome.
Imprima o radical do verbo.
Imprima o sufixo, mas traduza
AEI
paraâèî
como o carvão não pode compactar letras acentuadas.Inicie uma nova linha.
fonte
JavaScript (ES6),
507504 bytesRetorna uma matriz de 7 tempos, em que cada tempo é uma matriz de 8 formas.
Experimente online! (verbos regulares)
Experimente online! (desastre gramatical usando os verbos irregulares sugeridos no desafio)
fonte
Retina ,
20511891 bytes (UTF-8)Para o ponto de implementação. Vai tentar jogar golfe daqui.
Experimente online.
Explicação:
Manipule todas as palavras que terminam com
er
, com um0
separador as line:Manipule todas as palavras que terminam com
ir
, com0
como separador de linhas:Manipule todas as palavras que terminam com
re
, com0
como separador de linhas:Substitua tudo
je
seguido por uma vogal ou 'h' porj'
:E, finalmente, divida em zeros, que basicamente substitui todos os
0
s por novas linhas:Após o qual o resultado é gerado implicitamente.
fonte