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).
AssertionError
meno 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.