Programowanie w systemie UNIX/pari: Różnice pomiędzy wersjami
Usunięta treść Dodana treść
m →instalacja: gp |
m kolejność i gp |
||
Linia 5:
* sudo apt install pari-gp
=sposoby użycia =
* samodzielny program gp ( shell kalkulator)
** [https://pari.math.u-bordeaux.fr/gp.html przez przeglądarkę] = online
* biblioteka pari ( = libpari )
** wywołanie w programie
* tłumaczenie programu gp do kodu w c za pomocą kompilatora gp2c
==użycie biblioteki ==
* opcja kompilatora <code>-lpari</code>
* dyrektywa linkera: <code>#include <pari/pari.h></code>
* bibliotek skompilowana: <code>libpari.so</code>
===typy===
* GEN = podstawowy typ dla wszystkich obiektów PARI, jest wskaźnikiem do typu long.
===pierwszy program===
<source lang=c>
/*
gcc t.c -lpari -Wall
- fatal error: pari/pari.h: Nie ma takiego pliku ani katalogu
compilation terminated.
- solution : install libpari
./a.out
*/
#include<stdio.h>
#include<pari/pari.h>
int main(void)
{
GEN i,j,k;
pari_init(500000,2);
i=gun;
j=stoi(3);
k=gadd(i,j);
printf("1+3=%s\n ",GENtostr(k));
pari_close();
return 0;
}
</source>
Wynik:
<pre>
1+3=4
</pre>
nie jest imponujący ale program działa (:-))<ref>[http://stackoverflow.com/questions/37878551/how-to-run-c-program-using-pari-library-with-gcc stackoverflow question : how-to-run-c-program-using-pari-library-with-gcc]</ref>
==gp2c = tworzenie kodu C z pliku gp==
Używamy programu gp2c: <ref>[http://pari.math.u-bordeaux.fr/pub/pari/manuals/gp2c/gp2c.html manual gp2c]</ref>
gp2c file.gp > file.gp.c
===przykład===
Mamy funkcję obliczającą liczbę składowych zbioru Mandelbrota odpowiadających zbiorom Julia z przyciągającym cyklem: <ref>[https://oeis.org/A000740 The On-Line Encyclopedia of Integer Sequences : A000740 ]</ref>
Linia 138 ⟶ 184:
</source>
==gp ==
<pre>
gp
Reading GPRC: /etc/gprc ...Done.
GP/PARI CALCULATOR Version 2.9.4 (released)
amd64 running linux (x86-64/GMP-6.1.2 kernel) 64-bit version
compiled: Dec 19 2017, gcc version 7.3.0 (Ubuntu 7.3.0-1ubuntu1)
threading engine: pthread
(readline v7.0 enabled, extended help enabled)
Copyright (C) 2000-2017 The PARI Group
PARI/GP is free software, covered by the GNU General Public License, and comes
WITHOUT ANY WARRANTY WHATSOEVER.
Type ? for help, \q to quit.
Type ?15 for how to get moral (and possibly technical) support.
parisize = 8000000, primelimit = 500000, nbthreads = 8
?
</pre>
=Pomoc=
Linia 192 ⟶ 225:
=Źródła=
|