︠741fc83b-5414-4341-9185-aaddeae43bd2i︠ %html

Andra programmeringsspråk

Förutom Python kan du i CoCalc även programmera i bland annat C, C++, Fortran, Go, Haskell, Java, Lua och Perl. Du kan även skriva dokument med LaTeX. ︡c7c85eb7-4311-4f00-bd36-9bfe5eca9305︡{"done":true,"html":"

\n Andra programmeringsspråk\n

\nFörutom Python kan du i CoCalc även programmera i bland annat C, C++, Fortran, Go, Haskell, Java, Lua och Perl. Du kan även skriva dokument med LaTeX."} ︠adacdc4a-ad69-445d-abc0-2fd369becc31i︠ %html Låt oss med ett exempel visa hur man skriver ett program i C som beräknar summan $$ \sum_{k=1}^{12345} k. $$ Vi skapar en ny fil med filnamnet summa.c och skriver in följande kod i den.
#include int main(void) { int S, k; S = 0; for (k = 1; k <= 12345; k++) { S += k; } printf("Summa: %d\n", S); return 0; }
Därefter skapar vi en terminal via fliken New. Vid prompten kan vi nu kompilera och exekvera programmet.
~$ ~$ gcc summa.c -o summa ~$ ./summa Summa: 76205685 ~$ ︡ae06020e-31ab-43f8-8daa-1b40081a1dd6︡{"done":true,"html":"Låt oss med ett exempel visa hur man skriver ett program i C som beräknar summan\n$$\n \\sum_{k=1}^{12345} k.\n$$\nVi skapar en ny fil med filnamnet summa.c och skriver in följande kod i den.
\n\n#include \n\nint main(void)\n{\n int S, k;\n S = 0;\n for (k = 1; k <= 12345; k++) {\n S += k;\n }\n printf(\"Summa: %d\\n\", S);\n return 0;\n}\n
\nDärefter skapar vi en terminal via fliken New. Vid prompten kan vi nu kompilera och exekvera programmet.
\n\n~$\n~$ gcc summa.c -o summa\n~$ ./summa\nSumma: 76205685\n~$\n"} ︠cafdb9c3-3f3a-4847-9308-d4097b15fca0i︠ %html Vi kan även definiera funktioner och compilera dem som Cython. ︡720af745-0477-43e2-9050-477912318ddd︡{"done":true,"html":"Vi kan även definiera funktioner och compilera dem som Cython."} ︠4bded977-1d60-4f66-ae90-634caab4dd14s︠ %cython def summa() : cdef int S, k S = 0 for k in xrange(1, 12346) : S = S + k return S ︡fe5a11fb-d3fd-402f-a2fd-fdf952ea6a9c︡{"stdout":"Defined summa"}︡{"stdout":"\n"}︡{"file":{"filename":"/projects/39c59d8b-025b-4c6d-9fbb-81c16412c45c/.sage/temp/compute4-us/3655/spyx/_projects_39c59d8b_025b_4c6d_9fbb_81c16412c45c__sage_temp_compute4_us_3655_dir_KJIezB_a_pyx/_projects_39c59d8b_025b_4c6d_9fbb_81c16412c45c__sage_temp_compute4_us_3655_dir_KJIezB_a_pyx_0.html","show":true,"text":"Auto-generated code...","url":"/39c59d8b-025b-4c6d-9fbb-81c16412c45c/raw/.sage/temp/compute4-us/3655/spyx/_projects_39c59d8b_025b_4c6d_9fbb_81c16412c45c__sage_temp_compute4_us_3655_dir_KJIezB_a_pyx/_projects_39c59d8b_025b_4c6d_9fbb_81c16412c45c__sage_temp_compute4_us_3655_dir_KJIezB_a_pyx_0.html"},"once":false}︡{"done":true}︡ ︠d799c3df-69f9-41f3-bbd5-f610901c56fas︠ summa() # testkörning ︡974a927f-49cd-496f-8d56-b71419baae3d︡{"stdout":"76205685\n"}︡{"done":true}︡ ︠fca9cbbd-8899-4c07-aa35-c369e70245b0i︠ %html En kompilerad funktion är betydligt snabbare än motsvarande kod i Python. ︡3a25fee5-2a27-4b46-b818-bc40bf60dd47︡{"done":true,"html":"En kompilerad funktion är betydligt snabbare än motsvarande kod i Python."} ︠7b708e2d-e4e9-4473-ab38-cde6f9929058s︠ %timeit summa() ︡e1319138-2baf-4438-9945-9b5a5d0c19d2︡{"stdout":"625 loops, best of 3: 40.1 ns per loop\n"}︡{"done":true}︡ ︠6d408217-4f4d-4954-8543-12187d39277cs︠ %timeit S = 0 for k in xrange(1, 12346) : S = S + k ︡d4ad88d1-cb86-4ba6-b482-102d9102752b︡{"stdout":"125 loops, best of 3: 5.31 ms per loop"}︡{"stdout":"\n"}︡{"done":true}︡ ︠a2a315b8-c684-4d9b-b20a-06a26d6ad9ee︠