Προς το περιεχόμενο

απορια σε C


maria_smile

Προτεινόμενες αναρτήσεις

  • Moderators

Όχι. Η εντολή του Matlab δεν ισχύει στην C.

Μπορείς να το κάνεις όπως στον κώδικα σου ή να αρχικοποιήσεις τον πίνακα A ταυτόχρονα με τη δήλωσή του.

>
int A[2][2] = {{1, 2}, {3, 4}};

 

Κάποια σχετικά links:

http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.xlcpp8a.doc/language/ref/aryin.htm

http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.xlcpp8a.doc/language/ref/designators.htm

http://publications.gbdirect.co.uk/c_book/chapter6/initialization.html

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

και μπορεις να βαλεις πινακα αντι για αριθμους;

Μαλλον πιο χρησιμο ειναι να περιγραψω ακριβως τι θελω να κανω ε;

Λοιπον...

την πραξη την εχω ηδη περιγραψει. θελω να εχω Α(n)=[1 0;-1 1]*Α(n-1) οπου Α(0)=1

Ουσιαστικα καθε φορα εχω ενα καινουριο πινακα με διπλασια διασταση.

Αυτο που σκεφτηκα να κανω, μιας και το προηγουμενο δεν μου δουλευει ειναι το εξης:

Α(n)=[Α(n-1) 0 ; -A(n-1) A(n-1)] με Α(0)=1 (οι Α() ειναι πινακες)

αλλα δεν ξερω πως να το κανω αυτο με τους πινακες.

σιγουρα θα ειναι μεσα σε μια for αλλα δεν πολυξερω το πως...

 

Επισης εχω αλλο ενα προβλημα:

μετα θελω τον πινακα Α(n) (δηλαδη τον τελικο πινακα που θα παρω απ την πανω διαδικασια) να τον πολλαπλασιασω με εναν πινακα-στηλη, που θα πει οτι θα πρεπει να μπορω να παρω στοιχειο στοιχειο καθε στοιχειο του A(n)

 

Ευχαριστω

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • Moderators

Αν A(0) = 1 τότε Α(1) = [1 0;-1 1] ??

 

Αυτό που μου'ρχεται στο μυαλό σε τέτοιες καταστάσεις είναι η "αναδρομική" (σωστό: recursive) κλήση μιας συνάρτησης (που θα επιστρέφει δείκτη σε πίνακα) που αρχικά καλείται με όρισμα το n.

Δηλαδή κάτι σαν

>
int **doMultiplication(int argn)
{
 //ορισμός/αρχικοποιήσεις πινάκων
 (...)
 // 
 if(argn == 1)
 {
 // epestrepse A(1) =  [1 0;-1 1] * 1  (?)
 (...)
 }
 //
 else
 {
  // υπολόγισε A(argn) = [1 0; -1 1] (ειδική πράξη πολ/σμου με) doMultiplication(argn-1);
  // απελευθέρωσε τη μνήμη που δέσμευσε ο Α(argn-1)
  // επέστρεψε τον A(argn)
  (...)
 }
}

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...