NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: Vlastní čísla matice pomocí dynamické alokace

V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Jaroslav Kudrna:27.12.2015 17:19

Ahoj,

nevíte jak na script, který by měl řešit vlastní čísla matice pomocí dynamické alokace? V C jsem začátečník a toto jsem dostal jako semestrálku.

Díky moc

 
Odpovědět
27.12.2015 17:19
Avatar
Odpovídá na Jaroslav Kudrna
Neaktivní uživatel:27.12.2015 21:19

Nevím sice co je vlastní číslo matice, ale určitě by pomohlo, abys napsal, co přesně nechápeš, protože takhle to vypadá, jako bys chtěl celý program dostat už vypracovaný :-)

Nahoru Odpovědět
27.12.2015 21:19
Neaktivní uživatelský účet
Avatar
Lu Kiss
Člen
Avatar
Odpovídá na Jaroslav Kudrna
Lu Kiss:27.12.2015 21:31

na wiki je celkem pochopitelný návod na výpočet - https://cs.wikipedia.org/…%8D%C3%ADslo. Co se týče algortimu, tak se budeš muset trochu více rozepsat, zda ti dělá problém právě ta alokace nebo způsob procházení pole atd..

 
Nahoru Odpovědět
27.12.2015 21:31
Avatar
Jaroslav Kudrna:28.12.2015 16:47

Dynamickou alokaci matice mám napsanou :

#include <stdio.h>
#include <stdlib.h>

void funcMatrix(int **matrix, int number_of_rows, int number_of_columns)
{
  int i,j;
  for ( i = 0; i < number_of_rows; i++ )
  {
    for ( j = 0; j < number_of_columns; j++ )
        printf("%d ",matrix[i][j]);
    printf("\n");
  }

}

int main()
{
        int **matrix, number_of_rows, number_of_columns;
  printf("Enter number of rows.\n");
  scanf("%d",&number_of_rows);
  printf("Enter number of columns.\n");
  scanf("%d",&number_of_columns);
  matrix = (int**)malloc(sizeof(int*)*number_of_rows);
  int i,j;
  for ( i = 0; i < number_of_rows; i++ )
    matrix[i] = (int*)malloc(sizeof(int)*number_of_columns);

  for ( i = 0; i < number_of_rows; i++ )
    for ( j = 0; j < number_of_columns; j++ )
        {
        printf("Enter matrix element for the position [%d][%d]: ", i,j);
        scanf("%d",&matrix[i][j]);
        }

  printf("\n");
  funcMatrix(matrix,number_of_rows,number_of_columns);

  for ( i = 0; i < number_of_rows; i++ )
    free(matrix[i]);
  free(matrix);

  return 0;
}

Ale nevím jak mám vypočítat vlastní čísla. Vím, že pomocí nějakého algoritmu. Zkoušel jsem snad všechny z internetu, ale žádný nefunguje.

 
Nahoru Odpovědět
28.12.2015 16:47
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.