Bine ai venit guest
 
User:
Pass:

[Creare cont]
[Am uitat parola]
iBac = materialul ULTRACOMPLET de pregătire pentru bac la mate. Dacă vrei poţi.
Forum pro-didactica.ro  [Căutare în forum]

Forum » Cereri de rezolvări de probleme » probleme cu prisma
[Subiect nou]   [Răspunde]
[1]
Autor Mesaj
piciaxel
Grup: membru
Mesaje: 3
26 Aug 2010, 01:41

[Trimite mesaj privat]

probleme cu prisma    [Editează]  [Citează] 

cum pot calcula lungimea muchiei corespunzatoare bazei si inaltimea stiind aria totala si volumul???
ma straduiesc sa fac un programel care sa faca calcule pe baza prismei asa ca am nevoie de formula exacta de calcul


---
$L@Y $!$TEM
gauss
Grup: Administrator
Mesaje: 6933
22 Aug 2010, 15:50

[Trimite mesaj privat]


[Citat]
cum pot calcula lungimea muchiei corespunzatoare bazei si inaltimea stiind aria totala si volumul???
ma straduiesc sa fac un programel care sa faca calcule pe baza prismei asa ca am nevoie de formula exacta de calcul


Mai intai trebuie sa avem si noi toate datele problemei ca sa putem programa paralel. Este vorba de o prisma
(A) triunghiulara
(B) regulata?

Daca da si daca notam atunci cu
  • a = lungimea laturii bazei,
  • h = inaltimea prismei,
    atunci sunt cateva formule pe care le putem mai usor intelege decat invata pe de rost...

    Date A si V cel mai usor poate este sa exprimam h in functie de a si V, sa il substituim in a doua ecuatie, pe care sa o rezolvam (mai mult sau mai putin exact) dupa a.

    Programul pe care il scriu eu in sage (alegerea armelor este intotdeauna in mana noastra, nu a celor de la catedra... doar n-o sa iau COBOL acum...)
    este -de exemplu pentru volumul egal cu 3 si aria totala egala cu 8*sqrt(3):

    var( 'a' ) # introduc acolo o variabila
    V = 3
    A = 8*sqrt(3)
    h = V / a^2 / sqrt(3) * 4
    ecuatie = ( sqrt(3)/2*a^2 + 3*a*h == A )
    solve( ecuatie , a )

    Acest "program" livreaza...

    sage: var( 'a' ) # introduc acolo o variabila
    a
    sage: V = 3
    sage: A = 8*sqrt(3)
    sage: h = V / a^2 / sqrt(3) * 4
    sage: ecuatie = ( sqrt(3)/2*a^2 + 3*a*h == A )
    sage: solve( ecuatie , a )
    [a == -sqrt(13) - 1, a == sqrt(13) - 1, a == 2]

    Doua solutii sunt mai mari ca zero, pentru ele se obtine repede h-ul corespunzator.


  • ---
    df (gauss)
    piciaxel
    Grup: membru
    Mesaje: 3
    23 Aug 2010, 09:10

    [Trimite mesaj privat]


    de calculat si eu am calculat la fel ba chiar am mers mai departe doar ca inca ma incurc in algoritmica
    am inceput si eu tot cu prisma triunghiulara


    ---
    $L@Y $!$TEM
    piciaxel
    Grup: membru
    Mesaje: 3
    23 Aug 2010, 09:14

    [Trimite mesaj privat]


    [Citat]
    Mai intai trebuie sa avem si noi toate datele problemei ca sa putem programa paralel. Este vorba de o prisma
    (A) triunghiulara
    (B) regulata?


    eu ma gandeam la un algoritm in pascal dar ma inereseaza sa aflu pentru toate tipurile de prisma regulata (normal) adica patrulatera, triunghiularea si hexagonala

    nu ma intereseaza neaparat algoritmul decat la scoaterea radacinii cubice algoritmul eu il lucrez in pascal pentru ca abia invat codul si am inceput cu pascalul


    ---
    $L@Y $!$TEM
    gauss
    Grup: Administrator
    Mesaje: 6933
    26 Aug 2010, 01:41

    [Trimite mesaj privat]


    [Citat]
    ...eu ma gandeam la un algoritm in pascal dar ma inereseaza sa aflu pentru toate tipurile de prisma regulata (normal) adica patrulatera, triunghiularea si hexagonala


    Sa incercam impreuna macar sa punem problema pentru a fi oferita digerata computerului. Luam cazul simplu al unei prisme regulate patrulatere, deci o cutie cu baza patrat de latura a si cu inaltimea h. Atunci formulele sunt imediate si rog macar / apelez la o incercare pe hartie inainte de citire.
    formule pentru cutie cu laturile ce pleaca dintr-un varf de lungimi a,a,h



    Sa zicem ca vrem sa scriem un program (in pascal, sau daca trebuie mai repede in galop) ce citeste A (aria totala) si V si este obligat sa livreze toate valorile posibile pentru a si h ce respecta formulele de mai sus. Din pacate, pascal poate sa faca doar adunarile si scaderile pe care i le prescriem noi. Sa zicem ca cautam a,h astfel incat A = 37224 (de m patrati) si V = 566561 (de m cubi). Am ales doua numere pe gustul lui pascal. Din pacate nu exista functia

    IoItiDau_A_si_V_TuDa_MiIute_a_si_h

    implementata in pascal (sau in alte limbaje), asa ca trebuie sa analizam mai departe incat sa ajungem cat mai repede la o problema fezabila pentru pascal.

    Suntem astfel obligati sa facem ceva, uman io as substitui h obtinut din prima ecuatie in cea de-a doua. Obtinem ecuatia de gradul trei in a:

    in care mai introducem si valori "urate".
    Uman am face grafic, am vedea pe unde sunt cele una sau trei radacini reale, daca sunt vreunele pozitive, etc. Solutia se da cu formulele lui Tartaglia (furate de Cardano si ceva extinse), dar nu este chiar asa usor pentru pascal sa lucreze cu numere complexe, fiindca acestea apar obligatoriu. Am putea sa incercam doar o solutie aproximativa, dar atunci trebuie sa stim cum aplicam procedeul de aproximare al lui Newton.

    Sau stim de o biblioteca in pascal ce face munca pentru noi.

    Sau vedem ca didactic, problema nu este tocmai buna pentru pascal. Alegera armelor (limbaj de programare si cunoasterea bibliotecilor matematice aferente) este primul lucru esential in viata. Eu stiu, la scoala, un profesor ce stie (doar) pascal va face nazuri. Eu nu pot schimba nimic aici, pot incerca sa scriu cod insa daca mi se spune ce si ca chiar se merita.
    Nu inainte de a da sfatul de a folosi un alt limbaj de programare. Chiar mai bine, deoarece problema este de matematica, folosirea unui sistem algebric computerizat, care are deja implementat calculul simbolic si biblioteci de cautat radacini. Problema se reduce atunci la a sti sa cerem.

    Daca nu, trebuie sa implementam personal metoda lui Newton sau formulele lui Tartaglia (Cardano). Ce facem?


    N.B. Folosind PARI/GP (interpreter scris pe baza unor biblioteci C) tiparim pur si simplu:

    "Ruland" (Copii+paste in interpreter) vedem ceva de forma:

    Inutil sa spun ca daca luam volumul ceva mai mare cubica nu mai "musca" din axa Ox, deci nu aveam solutii.

    Inchei aici cu cateva intrebari despre buna definire a problemei:
  • Problema matematica deschisa mai ales ne-programatorilor: Ce relatie trebuie sa verifice A,V >0 astfel incat sa existe solutii a,h >0 ale problemei.
  • Pentru programatori: Ce arme alegem? Ce limbaj de programare si ce nivel de "automatism" (impartire pe cazuri) alegem?
  • Vrem solutia exacta si/sau cea aproximativa?
  • Ce algoritm implementam?
  • Daca il implementam si merge, cine-l mai citeste si ruleaza si de ce?

    Avem deci o situatie ca in viata de zi cu zi, ea ilustreaza la ce sunt buni matematicienii, la ce sunt buni programatorii si ce ar trebui sa rezolve managerii (comunicarea pentru luarea de decizii este esentiala aici, altfel nu pot incepe sa lucrez). Programatorul / matematicianul trebuie sa ofere doua sau trei solutii intotdeauna. Oamenii discuta si cad de acord... Apoi se implementeaza, nu merge o data, nu merge de doua... Cand merge se obtin in sfarsit solutiile a=-0.000051234 si h = "TODO: Specify a good default for h"...

    No, ce facem mai departe?
    (Cine a propus problema si care e miza?)


  • ---
    df (gauss)
    [1]


    Legendă:  Access general  Conţine mesaje necitite  47558 membri, 58582 mesaje.
    © 2007, 2008, 2009, 2010 Pro-Didactica.ρ