Bei einer int-Eingabe n wird n * umgekehrt (n) ausgedruckt.


9

Bei gegebener Ganzzahl nausdruckenn * reversed(n)

reversed(n)ist die Nummer, die Sie erhalten, wenn Sie reversedie Ziffern von n.


reverse(512) = 215

reverse(1) = 1

reverse(101) = 101

>>>>>>>>

func(5) = 5*5 = 25

func(12) = 12*21 = 252

func(11) = 11*11 = 121

func(659) = 659*956 = 630004

Der kürzeste Code gewinnt!

Bestenliste

code-golf  math  arithmetic  code-golf  math  integer  code-golf  arithmetic  integer  code-golf  sequence  base-conversion  palindrome  code-golf  math  primes  integer  code-golf  parsing  conversion  syntax  code-golf  sequence  primes  code-challenge  geometry  optimization  code-golf  graph-theory  code-golf  number-theory  primes  integer  code-golf  source-layout  cops-and-robbers  code-golf  source-layout  cops-and-robbers  code-golf  sequence  primes  integer  code-golf  math  number-theory  primes  rational-numbers  code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

3
Was ist das Gegenteil von 100?
tsh

001, aber auf jeden Fall ist es in Ordnung, wenn Sie zusätzliche Nullen vor
K Split X

4
Warum abstimmen? Weil diese Herausforderung zu trivial ist (im Vergleich zu einigen anderen Herausforderungen nicht!) Oder weil sie schlecht formatiert / unklar ist?
user202729

2
@ user202729 Ich habe abgestimmt, weil ich nicht viel Abwechslung oder Tiefe bei den Antworten gesehen oder erwartet habe. Diese Frage ist langweilig, ich habe es versucht. Ein Grund dafür, dass es langweilig ist, ist, dass es trivial ist, was meiner Meinung nach ein vollkommen gerechter Grund ist, eine Frage selbst abzulehnen.
Ad-hoc-Garf-Jäger

Antworten:



4

JavaScript (SpiderMonkey) , 45 35 33 28 Byte

n=>n*[...n].reverse().join``

Probieren Sie es online aus!


Willkommen bei PPCG! Du musst nicht zählen f=; Anonyme Funktionen sind standardmäßig zulässig.
Dennis

Schalten Sie heraus (n+"").split("")für [...(n+"")]ein paar Bytes zu speichern. Sie benötigen kein unäres Plus, und die Klammern um die umgekehrte Zeichenfolge sind irrelevant. Alles in allem spart das 10 Bytes.
Kamoroso94

Sie können ersetzen .join("")mit .join``zu speichern 2 Byte.
ATaco

Speichern Sie 5 Bytes, indem Sie die Eingabe als Zeichenfolge verwenden: tio.run/##BcFRCoAgDADQu/ilQYP6t4tEoNgMzTZxIXR6ey/…
Shaggy

4

Gelee , 3 Bytes

×ṚḌ

Ich bin neu bei Jelly, also lassen Sie mich bitte wissen, ob es eine Möglichkeit gibt, dies in 1 oder 2 Bytes zu tun!

Probieren Sie es online aus!

Erläuterung

×ṚḌ    (Input: 12)

 Ṛ     Reversed decimal digits (Stack: [2, 1])
×      Multiply by input       (Stack: [24, 12])
  Ḍ    Convert to decimal      (Stack: 252)
       Implicit print

Eigentlich ṚḌ×wäre eine bessere Version. Natürlich würde dies immer noch funktionieren, da die Basen funktionieren.
Erik der Outgolfer

@EriktheOutgolfer Ich habe das ursprünglich zuerst geschrieben, aber das ×aus Fantasie verschoben;)
JungHwan Min

4

Ruby, 25 24 Bytes

->n{n*eval(n.digits*'')}

Probieren Sie es online aus! .

Integer#digits Gibt eine Liste mit umgekehrten Ziffern zurück, sodass keine weitere Umkehrung erforderlich ist.

Vielen Dank an @ benj2240 für das Golfen eines Bytes!



@ benj2240 danke! :)
Yytsi

Die Auswertungsroute funktioniert nicht wirklich, da das Programm auf 900 mit einem Fehler fehlschlägt, Invalid octal digit (SyntaxError)anstatt die erwarteten 8100 ...
Value Ink


3

ARBLE , 12 Bytes

Nimmt die Eingabe als int auf.

a*reverse(a)

Probieren Sie es online aus!


Deshalb habe ich Integer-Eingabe gesagt;), funktioniert int noch?
K Split X

@KSplitX Oh, das habe ich nicht bemerkt. Ich würde diese Einschränkung für etwas unnötig halten, aber es liegt an Ihnen.
ATaco

@KSplitX behoben.
ATaco

Sollte verwendet werden, n * reverse(n)damit es Wort für Wort mit der Spezifikation der Frage übereinstimmt (eine ganze Zahl angegeben n, ausdrucken n * reversed(n))
Okx

3

Python 3, 35 28 Bytes

lambda m:m*int(str(m)[::-1])

Probieren Sie es online aus!

7 Bytes wurden gespart, indem ein Fehler behoben wurde, auf den Dennis hingewiesen hat.


Nein, es ist klar, du konvertierst in einen String, der ihn [::-1]umkehrt, dann bewerten wir xD
K Split X

Dies funktioniert nicht für Eingabe 80 , da 08es sich um ein ungültiges (oktales) Literal handelt.
Dennis

3
7 Bytes durch Beheben eines Fehlers gespart Lieben Sie es nicht einfach, wenn das passiert ...
ETHproductions



3

C # .NET, 55 Bytes

n=>{int i=n,j=0;for(;i>0;i/=10)j=j*10+i%10;return n*j;}

Erläuterung:

Probieren Sie es hier aus.

n=>{           // Method with integer as both parameter and return-type
  int i=n,     //  Integer `i` (starting at the input)
      j=0;     //  Integer `j` (starting at 0)
  for(;i>0;    //  Loop as long as `i` is not 0
      i/=10)   //    After every iteration: Remove the last digit of `i`
    j=j*10     //   Add a trailing zero to `j`,
      +i%10;   //   and then sum this new `j` with the last digit of `i`
               //  End of loop (implicit / single-line body)
  return n*j;  //  Return the input multiplied with `j`
}              // End of method

2

Stapel, 87 Bytes

@set s=%1
@set r=
:l
@set/ar=r*10+s%%10,s/=10
@if %s% gtr 0 goto l
@cmd/cset/a%1*r

Hier muss der arithmetische Weg eingeschlagen werden, da die Zeichenfolgenumkehr für einige Zahlen wie 80 fehlschlägt.


2

J, 7 Bytes

*|.&.":

Probieren Sie es online aus!

Ich könnte mir keinen kürzeren Weg vorstellen, obwohl ich das für ziemlich elegant halte.

Erläuterung

*|.&.":
   &.":  Convert to string, apply next function, then undo conversion
 |.      Reverse
*        Multiply by input


2

LISP, 91 64 Bytes

(defun R (N) (defvar M (Write-to-String N)) (Parse-Integer (Reverse M))) (write (* x (R x)))

(defun R(N)(write(* N(parse-integer(reverse(write-to-string N))))))

Wobei x N Ihre ganze Zahl ist, mit der Sie natürlich arbeiten möchten.

Ich bin ziemlich neu in der Programmierung, aber ich habe festgestellt, dass das Ausprobieren dieser Code Golf-Probleme eine gute Übung war. Fehlt mir etwas, das dabei helfen könnte?

EDIT: Dank einiger Tipps von Ceilingcat konnte ich einige Bytes sparen. Altes Programm als Referenz durchgestrichen.


Willkommen bei Code Golf! Sie können einige Leerzeichen entfernen und möglicherweise eine Variablenzuweisung fallen lassen. Konventionell können Sie möglicherweise auch nur die Ausgabe anstelle von(write ...)
Ceilingcat

Sie können ein Byte mit a lambdaanstelle von speichern defun. Lesen Sie auch Tipps zum Golfen in Lisp
Deckenkatze


2

Stapel , 150 125 121 Bytes (+ 5 Bytes? cmd/q)

set l=%1
set n=0
set r=
:L
call set t=%%l:~%n%,1%%%
set/an+=1
if [%t%] neq [] set r=%t%%r%&goto L
set/ar=%r%*%l%
echo %r%

25 Benutzer dank user202729 gespeichert !

4 Bytes dank Matheus Avellar gespart !




Ist das nicht Batch, nicht Bash? Der TIO für Bash funktioniert hierfür nicht.
Justin Mariner

Ja Ja es ist; Entschuldigung
Ephellon Dantzler

Sie können ifdies auf 121 Bytes einstellen : if [%t%] neq [] set r=%t%%r%&goto L. Ich denke jedoch, dass Sie 1 Byte für das /QFlag einschließen müssen, das übergeben wird, cmddamit es implizit ausgeführt wird@echo off
Matheus Avellar

2

> <>, 41 39 Bytes

:&>:a%:}-\
/~\?)0:,a/
>l1-?\&*n;
\ +*a/

Wie es funktioniert:

:&

Angenommen, die Eingabe wurde in den Stapel verschoben ( https://codegolf.meta.stackexchange.com/a/8493/76025 ). Dupliziere es und speichere eine Kopie im Register.

   >:a%:}-\
   \?)0:,a/

Konvertiert dies in seine einzelnen Ziffern und belässt sie auf dem Stapel.

/~
>l1-?\
\ +*a/

Der Spitzenwert ist aufgrund des Konvertierungsprozesses von Zahl zu Ziffer immer eine Null. Lass es vom Stapel fallen. Während die Länge> 1 ist, multiplizieren Sie das erste Element mit zehn und fügen Sie es dem darunter liegenden Element hinzu. Dies führt zu einer umgekehrten Anzahl.

      &*n;

Multiplizieren Sie die ursprüngliche Zahl mit der Rückseite, drucken Sie die Antwort aus und stoppen Sie.



2

Ohm v2 , 2 Bytes

œΠ

Probieren Sie es online aus!

Erläuterung:

œΠ   Main wire, arguments: n

œ    Pushes [n, n.reverse]
 Π   Multiplies that array together
     Implicit output

2
bleibt 4 Monate am Telefon : P
K3v1n

Sie müssen für eine lange Zeit in die Warteschleife gelegt werden, damit es keine Erklärung gibt
MilkyWay90

@ MilkyWay90 Wir sind alle schon anderthalb Jahre in der Warteschleife, oder?
Nick Clifford

@ NickClifford Nicht alle von uns haben
MilkyWay90

1

Mathematica, 19 Bytes

# IntegerReverse@#&

Nimmt eine ganzzahlige Eingabe vor.




1

Casio-Basic (fx-CP400), 44 Byte

ExpToStr n,a
StrInv a,a
Print n*strToExp(a)

Es gibt keine integrierte Funktion zum Umkehren einer Ganzzahl, aber eine zum Umkehren einer Zeichenfolge.

ExpToStr n,averwandelt n in einen String und speichert ihn in a, StrInv a,aüberschreibt dann amit der umgekehrten Version von sich. Die letzte Zeile wird azu einer Zahl und wird gedrucktn*a .

43 Bytes für den Code, +1 zur Eingabe nin das Parameterfeld.


1

Japt, 2 Bytes

Nimmt die Eingabe als Zeichenfolge und gibt eine Ganzzahl aus.

*w

Versuch es


Wow, ich dachte, es müssten mindestens 4 Bytes sein ... Ich nehme an, es sind nur 3, selbst wenn die Eingabe als Ganzzahl genommen wird*sw
ETHproductions

@ETHproductions: Ja, das hatte ich ursprünglich.
Shaggy

1

MATLAB / Oktave , 33 31 Bytes

@(n)str2num(flip(int2str(n)))*n

Probieren Sie es online aus!

Anonyme Octave / MATLAB-Funktion. Dies ist ein ziemlich naiver Ansatz - konvertiert die Ganzzahl in eine Zeichenfolge, dreht die Zeichenfolge um, konvertiert das Ergebnis zurück in eine Ganzzahl und multipliziert es mit dem Original.


  • Speichern Sie 2 Bytes, indem Sie flipanstelle von verwenden fliplr.



1

PHP, 23 + 1 Bytes

<?=$argn*strrev($argn);

In Datei speichern und als Pipe mit ausführen -nF.



1

MATL , 5 Bytes

VPUG*

Probieren Sie es online aus!

Erläuterung: VKonvertiert in Zeichenfolge, Pdreht sich um, Ukonvertiert zurück in numerische Zeichen, Gkopiert die ursprüngliche Eingabe erneut und *multipliziert sie miteinander.


1

Runenverzauberungen , 11 10 Bytes

i:0qr͍n*@

Probieren Sie es online aus!

Nimmt Eingaben auf, dupliziert sie, erzwingt eine Kopie in eine Zeichenfolge, kehrt sie um, erzwingt sie zurück auf einen numerischen Wert, multipliziert und gibt das Ergebnis aus.

0qführt den Zwang zu einer Zeichenfolge durch, indem eine Null am Ende verkettet wird. Es gibt keinen expliziten ToString()Operator, daher ist dies die kürzeste Methode in diesem speziellen Fall, in dem die an den Anfang getauschte 0 den resultierenden numerischen Wert nicht ändert. Vielen Dank an ASCII-only für dieses -1-Byte.



@ Nur ASCII Fair genug. Am Ende spiele ich mit den meisten davon bei der Arbeit und komme nicht immer wieder, wenn ich sie zu Hause poste.
Draco18s vertraut SE
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.