Inlinguaggio formale eprogrammazione software ilconcatenamento (oconcatenazione) indica un procedimento in cuiparole onumeri vengono legati insieme a formare, rispettivamente, una solaparola onumero.[1][2]
Ad esempio, concatenando "piano" e "forte" si ottiene "pianoforte", oppure concatenando i numeri 5 e 12 si ottiene il numero 512.
Quest'operazione è spesso utilizzata neilinguaggi di programmazione per l'unione distringhe.
Siano due linguaggi costruiti su un dato unalfabeto. Il concatenamento rappresenta tutte le stringhe della forma, dove appartiene a e a. Formalmente:
Lo stesso procedimento può essere fatto con una stringa e un linguaggio o viceversa. Il risultato del concatenamento di un linguaggio e una stringa è
Per esempio, se su un alfabeto sono costruiti due linguaggi e, il loro concatenamento corrisponde a
Dati dueinsiemi e il loro concatenamento è l'insieme che contiene tutte le coordinate di unascacchiera nellanotazione algebrica. Il risultato del concatenamento di una qualsiasi lettera di e è l'insieme contenente tutte le coordinate dellacolonna corrispondente alla lettera. Per esempio, si consideri la lettera d in, il concatenamento indica lacolonna dellaregina.
Nella maggior parte dei linguaggi di programmazione, l'operatore per il concatenamento delle stringhe è "+".
La sintassi è:
'stringa a' + 'stringa b'
InJava è possibile concatenare più stringhe semplicemente in questo modo[3]:
Stringa="Ciao, ";Stringb="Mondo!";Stringc=a+b;//concateno a e bSystem.out.println(c);//OUTPUT: Ciao, Mondo!
Concatenare numeri interi è più complesso:
inta=46;intb=128;intc=Integer.parseInt(Integer.toString(a)+Integer.toString(b));System.out.println(c);//OUTPUT: 46128
Qui, usufruendo della classe java.lang.Integer, i due numeri vengono prima trasformati in stringhe, poi concatenati e infine ritrasformati nelnumero intero risultante assegnato alla variabile c.[4]
InC++,C ePython, come in Java, si può usare l'operatore "+ ":
"Stringa 1" + "Stringa 2"
Inoltre, in C++, è possibile eseguire il concatenamento di stringhe e/o variabili nei comandi cout e cerr della libreriaiostream utilizzando l'operatore " <<".
Inmatematica concatenare vuol dire fondere due o più numeri per formarne uno nuovo.[2]
Per esempio:
Il simbolo è stato usato qui per indicare l'operazione concatenamento.
L'operazione NON gode della proprietà commutativa, quindi:
Una semplicefunzione matematica che esegue questa operazione tra due numeri e con e è:
Dove indica lafunzione parte intera superiore.
Questa formula si ricava facilmente in questa maniera:Il primo numero m, deve essere spostato di tante cifre quante sono quelle di n, per lasciargli spazio. Dunque per avere il numero di cifre di n basterebbe la parte intera superiore dellogaritmo (nel caso della numerazione decimale in base 10) di n sommato al più ad 1.Adesso, possiamo spostare m delle cifre di n verso sinistra moltiplicandolo per dove è il numero di cifre, uguale a:.A questo punto, spostato m delle cifre di n, possiamo sommare n. Il risultato è la concatenazione dei due numeri.
Ovviamente è possibile generalizzare la formula per una qualsiasi base, sostituendo le basi dell'esponenziale e del logaritmo:
Dove è labase del nostro sistema di numerazione.
LeCostanti di Champernowne e laCostante di Copeland-Erdős sono ottenute attraverso concatenamento.