Search
 
 
  Engleski
 
 
 
Open in this window (click to change)
Forum@DeGiorgi: Početna
Forum za podršku nastavi na PMF-MO
Login Registracija FAQ Smajlići Članstvo Pretražnik Forum@DeGiorgi: Početna

pitanje iz C-a
WWW:

Moja sarma
 
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 1. godine, preddiplomski studij Matematika -> Programiranje 1 i 2
Prethodna tema :: Sljedeća tema  
Autor/ica Poruka
Gost






PostPostano: 15:10 sub, 15. 2. 2003    Naslov: pitanje iz C-a Citirajte i odgovorite

Bok
znam da nema veze s uvodom u rac, ali imam pitanje iz C-a.
kako napisati program koji ima vanjsku staticku matricu 3*3 i koja je inicijalizirana bilokako, a u main-u se transponira funkcijom koja je definirana u nekoj drugoj datoteci?
Unaprijed hvala
P.S ja sam rijesio bez greske ali ima bug-ova :(
datoteka 1:
#include <stdio.h>

void transp (double A[3][3])
{
int i,j;
double temp;
for (i=0;i<3;i++)
for (j=0;j=i;j++)
{
temp=A[i][j];
A[i][j]=A[j][i];
A[j][i]=temp;
}
for (i=0;i<3;i++)
for (j=0;j=3;j++)
printf("%d",A[i][j]);

}

datoteka 2:
#include <stdio.h>

extern void transp(double);
double M[3][3]={1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0};

main()
{
transp(M[3][3]);
return 0;
}
Bok
znam da nema veze s uvodom u rac, ali imam pitanje iz C-a.
kako napisati program koji ima vanjsku staticku matricu 3*3 i koja je inicijalizirana bilokako, a u main-u se transponira funkcijom koja je definirana u nekoj drugoj datoteci?
Unaprijed hvala
P.S ja sam rijesio bez greske ali ima bug-ova Sad
datoteka 1:
#include <stdio.h>

void transp (double A[3][3])
{
int i,j;
double temp;
for (i=0;i<3;i++)
for (j=0;j=i;j++)
{
temp=A[i][j];
A[i][j]=A[j][i];
A[j][i]=temp;
}
for (i=0;i<3;i++)
for (j=0;j=3;j++)
printf("%d",A[i][j]);

}

datoteka 2:
#include <stdio.h>

extern void transp(double);
double M[3][3]={1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0};

main()
{
transp(M[3][3]);
return 0;
}


[Vrh]
milasinovic
Moderator
Moderator


Pridružen/a: 25. 11. 2002. (17:03:32)
Postovi: (18)16
Spol: muško
Sarma = la pohva - posuda
= 4 - 1
Lokacija: FER-D374

PostPostano: 15:18 pon, 17. 2. 2003    Naslov: Re: pitanje iz C-a Citirajte i odgovorite

[quote="Anonymous"]Bok
P.S ja sam rijesio bez greske ali ima bug-ova :(
[/quote]
Hm, cudna neka tvrdnja.
Ok, dakle treba ispraviti sljedece stvari
u datoteci 1:
[quote="Anonymous"]
for (j=0;j=i;j++)
[/quote]
Treba biti j==i , ili jos bolje j<i
u datoteci 2:
[quote="Anonymous"]
printf("%d",A[i][j]);
[/quote]
Radi se o double brojevima zato ne %d u ispisu vec %lf

[quote="Anonymous"]
extern void transp(double);
[/quote]
treba biti extern void transp(double[3][3]);

[quote="Anonymous"]
transp(M[3][3]);
[/quote]
A poziv funkcije treba biti transp(M)
jer si ti u gornjem primjeru prenio vrijednost zadnjeg elementa, a tebi je trebalo polje, tj. adresa pocetka polja.

Opcenito najidealnije bi bilo da ti funkcija prima double* i dimenzije, tj. da u funkciji baratas sa jednodimenzionalnim poljem, ali necu sad o tome. Ako te bas zanima mogu i to napisati.
Anonymous (napisa):
Bok
P.S ja sam rijesio bez greske ali ima bug-ova Sad

Hm, cudna neka tvrdnja.
Ok, dakle treba ispraviti sljedece stvari
u datoteci 1:
Anonymous (napisa):

for (j=0;j=i;j++)

Treba biti j==i , ili jos bolje j<i
u datoteci 2:
Anonymous (napisa):

printf("%d",A[i][j]);

Radi se o double brojevima zato ne %d u ispisu vec %lf

Anonymous (napisa):

extern void transp(double);

treba biti extern void transp(double[3][3]);

Anonymous (napisa):

transp(M[3][3]);

A poziv funkcije treba biti transp(M)
jer si ti u gornjem primjeru prenio vrijednost zadnjeg elementa, a tebi je trebalo polje, tj. adresa pocetka polja.

Opcenito najidealnije bi bilo da ti funkcija prima double* i dimenzije, tj. da u funkciji baratas sa jednodimenzionalnim poljem, ali necu sad o tome. Ako te bas zanima mogu i to napisati.


[Vrh]
Korisnički profil Pošaljite privatnu poruku Posjetite Web stranice
Burn
Gost





PostPostano: 1:58 uto, 18. 2. 2003    Naslov: Citirajte i odgovorite

Hvala!

ocito jos nisam tolko iskusan da vidim tako glupo ocite greske :oops:
Hvala!

ocito jos nisam tolko iskusan da vidim tako glupo ocite greske Embarassed


[Vrh]
mdoko
Forumaš(ica)
Forumaš(ica)


Pridružen/a: 30. 11. 2002. (22:17:12)
Postovi: (71A)16
Spol: muško
Sarma = la pohva - posuda
199 = 237 - 38
Lokacija: Heriot-Watt University, Edinburgh

PostPostano: 13:07 sri, 19. 2. 2003    Naslov: Citirajte i odgovorite

samo jedna mala napomena

for( ; i == j ; ) nije ekvivalentno s for( ; i < j ; )

Prva petlja se vrti dok kod je i jednako j, a druga dok je i manje od j
samo jedna mala napomena

for( ; i == j ; ) nije ekvivalentno s for( ; i < j ; )

Prva petlja se vrti dok kod je i jednako j, a druga dok je i manje od j



_________________
Extraordinary claims require extraordinary evidence. – Carl Sagan
[Vrh]
Korisnički profil Pošaljite privatnu poruku Posjetite Web stranice
Prethodni postovi:   
Započnite novu temu   Odgovorite na temu   printer-friendly view    Forum@DeGiorgi: Početna -> Kolegiji 1. godine, preddiplomski studij Matematika -> Programiranje 1 i 2 Vremenska zona: GMT + 01:00.
Stranica 1 / 1.

 
Forum(o)Bir:  
Ne možete otvarati nove teme.
Ne možete odgovarati na postove.
Ne možete uređivati Vaše postove.
Ne možete izbrisati Vaše postove.
Ne možete glasovati u anketama.
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2002 phpBB Group
Theme created by Vjacheslav Trushkin
HR (Cro) by Ančica Sečan