#2 KIIV
Díky moc!
Už je mi to všechno jasný. Solil jsem tam zbytečný kraviny, byl to můj první kód co jsem dělal sám. S tím odsazením budu muset začít něco dělat. Fakt moc děkuju.
Ahoj,
potřeboval bych poradit s úkolem... Mám za úkol do matice nagenerovat náhodná čísla. Počet řádků a sloupců matice se načtou z texťáku. Pak program má vypsat do texťáku vypsat prvočísla... Ale nevypisuje mi to nic a vůbec nevím co mám špatně. Nějaké rady, prosím?
Díky.
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include<time.h>
#include<math.h>
int main()
{
srand( (unsigned) time(NULL));
FILE *f1,*f2;
f1 = fopen("vstup.txt","r");
if(f1==NULL){printf("soubor se nepodarilo otevrit");
getch();
exit(1);}
double m,n;
fscanf(f1,"%lf",&m);
int znak1;
znak1=getc(f1);
fscanf(f1,"%lf",&n);
int znak2;
znak2=getc(f1);
fclose(f1);
if (m==NULL){printf("Spatna hodnota sloupce ci radku matice!!!");
getch();
exit(1);}
if (n==NULL){printf("spatna hodnota sloupce ci radku matice!!!");
getch();
exit(1);}
printf("m=%lf \n",m);
printf("n=%lf \n",n);
int i,j;
int index_i,index_j;
double ** xd;
xd = (double **) malloc(m*sizeof(double*));
for(i=0;i<m;i++) xd[i] = (double *) malloc(n*sizeof(double) );
for(i=0;i<m;i++)
for(j=0;j<n;j++)
xd[i][j]=(i+j)*rand()%100;
printf("\n vypis matice \n\n");
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
printf("xd[%d][%d]=%4.1lf ",i,j,xd[i][j]);
printf("\n");
}
for(i=0;i<m ;i++) free(xd[i]);
free(xd);
int l,k,prvocislo;
/* Hledame prvocisla */
for(i=0;i<n;i++)
for(j=0;j<m;j++)
{
for(l = xd[i][j]; l <= xd[i][j]; l++)
prvocislo = 1;
for(k = 2; k <= i/2; k++)
if (l%k == 0)
{
prvocislo = 0;
break;
}
if (prvocislo=1)
fprintf(f2,"%lf",l);
fclose(f2);
printf("\n prvocisla vypsana v prvocisla.txt \n\n");
}
getch();
return 0;
}