Perl, 229 byte
Utilizza la stessa formula della maggior parte dei linguaggi che non hanno una soluzione conveniente per questa sfida (anche se non li ho guardati per trovarla, ma è una formula abbastanza facile da trovare). Quindi non molto interessante, ma di solito non ci sono molte risposte del Perl a questo tipo di sfide, quindi volevo solo proporne una.
$i=new Imager xsize=>700,ysize=>700;for$x(1..$_){for$y(1..$_){$i->line(color=>red,x1=>350+300*cos($a=2*pi*$x/$_),x2=>350+300*cos($b=2*pi*$y/$_),y1=>350+300*sin$a,y2=>350+300*sin$b)}}$i->write(file=>"t.png")
E avrai bisogno di -MImager
(9 byte), -MMath::Trig
(fornire pi
, 13 byte) e -n
(1 byte) ==> + 23 byte.
Per eseguirlo:
perl -MImager -MMath::Trig -ne '$i=new Imager xsize=>700,ysize=>700;for$x(1..$_){for$y(1..$_){$i->line(color=>red,x1=>350+300*cos($a=2*pi*$x/$_),x2=>350+300*cos($b=2*pi*$y/$_),y1=>350+300*sin$a,y2=>350+300*sin$b)}}$i->write(file=>"t.png")' <<< 27
Creerà un file denominato t.png
che contiene l'immagine.
Dovrai installarlo Imager
però, ma non preoccuparti, è abbastanza facile:
(echo y;echo) | perl -MCPAN -e 'install Imager'
(Gli echo
s configureranno il tuo cpan se non l'hai mai usato prima (in realtà funzionerà solo se il tuo perl è abbastanza recente, penso che per molti di voi lo sarà, e mi dispiace per gli altri!)) .
E la versione più leggibile (sì, è abbastanza leggibile per uno script Perl!):
#!/usr/bin/perl -n
use Imager;
use Math::Trig;
$i=Imager->new(xsize=>700,ysize=>700);
for $x (1..$_){
for $y (1..$_){
$i->line(color=>red,x1=>350+300*cos($a=2*pi*$x/$_), x2=>350+300*cos($b=2*pi*$y/$_),
y1=>350+300*sin($a), y2=>350+300*sin($b));
}
}
$i->write(file=>"t.png");
-1 byte grazie a Titus.
n
e tracciare linee pern
punti.