Español
Fuente/ Codesnippets

MATMUL - Echte Matrizenmultiplikation como Proc

 

p.specht

Als Vorbereitung a allfällligen Beschleunigung mittels Ensamblador...
Windowtitle "MATMUL - Matrixmultiplikation como Proc"
Windowstyle 24
Ventana 0,0-%maxx,%maxy:imprimir
Declarar s&,sz&,z&,err&
'z&=53 : sz&=50 : s&=17
z&=53 : sz&=1  : s&=10
set("decimals",0):set("numwidth",8)
dec z&:dec sz&:dec s&
Declarar u![z&,sz&],v![sz&,s&],w![z&,s&]
inc z&:inc sz&:inc s&
u![]=&index : v![]=3*&index
Check MATMUL(u![],v![],w![],s&,sz&,z&)
font 2
Check MATPRNT(w![],s&,z&)
waitinput
FIN

Proc MATMUL :parámetros a![],b![],c![],s&,sz&,z&

    caso (s&<1) or (sz&<1) or (s&<1):volver -2
    caso (s&*sz&*z&)>50000:volver -1
    Declarar sum!,prod!,i&,j&,k&
    dec s&:dec sz&:dec z&

    Whileloop 0,z&:i&=&Loop

        whileloop 0,s&:j&=&Loop

            sum!=0

            whileloop 0,sz&:k&=&Loop

                prod!=a![i&,k&]*b![k&,j&]
                sum!=sum!+prod!

            EndWhile

            c![i&,j&]=sum!

        EndWhile

    EndWhile

    volver 0

ENDPROC

Proc MATPRNT

    parámetros c![],s&,z&
    caso (s&<1) or (s&<1):volver -2
    caso (s&*z&)>50000:volver -3
    caso (z&>53) or (s&>17):volver -4
    declarar i&,j&
    dec s&:dec z&

    Whileloop 0,z&:i&=&Loop

        whileloop 0,s&:j&=&Loop

            imprimir c![i&,j&],
            EndWhile:imprimir

        EndWhile

        volver 0

    ENDPROC

    proc Check:parámetros err&

        seleccionar err&

            caseof  0:volver

            caseof -1:Imprimir " Error: *** Index Overflow ***"

            caseof -2:Imprimir " Error: *** Index <=0 ***"

            caseof -3:Imprimir " Error: *** Mat too big for RAM ***"

            caseof -4:Imprimir " Problema: *** Mat too big for Screen ***"

            otherwise :Imprimir " Error: *** unknown ***"

        endselect

    ENDPROC

 
XProfan 11
Computer: Gerät, daß es in Mikrosekunden erlaubt, 50.000 Fehler zu machen, zB 'daß' statt 'das'...
26.05.2021  
 



Zum Quelltext


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

1.411 Views

Untitledvor 0 min.
Hans Neff24.01.2023
Rschnett06.08.2022
p.specht21.11.2021
R.Schneider20.11.2021
Más...

Themeninformationen

Dieses Thema ha 1 subscriber:

p.specht (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie