Il tuo compito è quello di scrivere un programma (o una funzione) che prenderà una stringa come input e accluda il testo all'inizio di ogni riga che soddisfi le seguenti regole:
- Il testo allegato deve contenere il numero di riga. È possibile utilizzare l'indicizzazione basata su 0 o 1.
- Il testo deve essere un commento nella tua lingua. Un commento è definito come un pezzo di codice sintatticamente valido che non modifica lo stato del programma. La rimozione del commento non dovrebbe apportare modifiche al programma.
- Il commento può contenere solo nuove righe alla fine.
- Non è necessario inserire numeri di riga per le righe che contengono solo spazi bianchi e commenti.
specificazioni
- Puoi presumere che l'ingresso sarà un programma valido nella tua lingua.
- In linguaggi sensibili al rientro come Python, è possibile inserire il commento del numero di riga dopo tutto il rientro. Puoi scegliere le schede o gli spazi come carattere di rientro, ma devi specificare nel post.
- Si può presumere che ogni istruzione nel codice occuperà al massimo l'intera riga 1; cioè nessuna stringa multi-linea o continuazione della barra rovesciata.
Casi test
Pitone:
#0
a = int(input())
#1
while a:
#2
print(a)
C: (Onestamente, sono sorpreso che questo compili)
/*0 */#include <stdio.h>
/*1 */int main()
/*2 */{
/*3 */ char c;
/*4 */ c = getchar();
/*5 */ do
/*6 */ {
/*7 */ putchar(c);
/*8 */ }
/*9 */ while (c);
/*10*/}
Questo è code-golf , quindi vince la risposta più breve (in byte).
AssertionErrormeno che la traccia dello stack non contenga la frase foo.py, che dovrebbe derivare da un nome di file ma potrebbe anche apparire come un commento di riga nel contesto.