Chirurgia spinală minim invazivă
Chirurgia spinală minim invazivă oferă pacienților oportunitatea unui tratament eficient, permițându-le o recuperare ultra rapidă și nu în ultimul rând minimizând leziunile induse chirurgical. Echipa noastră utilizează un spectru larg de tehnici minim invazive, din care enumerăm câteva: endoscopia cu variantele ei (transnazală, transtoracică, transmusculară, etc), microscopul operator, abordurile trans tubulare și nu în ultimul rând infiltrațiile la toate nivelurile coloanei vertebrale. www.neurohope.ro |
[TEMA] interclasare cu functii
Last Updated: Oct 22 2014 18:33, Started by
jamesbond1975
, Oct 22 2014 18:00
·
0
#1
Posted 22 October 2014 - 18:00
Buna,
Ma poate ajuta cineva la problema urmatoare, va rog : "Se dau n si m, dimensiunile a 2 vectori si elementele celor 2 vectori. Sa se afiseze toate elementele celor 2 vectori ordonate crescator." Programul trebuie sa aiba 4 functii : una de citire, una de interclasare, una de scriere si main-ul. Nu se pot folosi pointeri ! Programul care l-am scris pana acum arata cam asa (imi da erori peste erori; stiu ca am folosit pointeri, dar nu am gasit o varianta fara; daca m-ar putea ajuta cineva, as fi recunoscator !) : #include <p>#include void citire(FILE *fi, int v[], int *n) { int i; fscanf(fi,"%d",n); for(i=0;i<(*n);i++) fscanf(fi,"%d",&v[i]); } void interclasare() { int i1, i2, i3; i1=i2=i3=0; while(i1 if(v1[i1] v3[i3]=v1[i1]; i1++; } else { v3[i3] = v2[i2]; i2++; } i3++; } while(i1 v3[i3]=v1[i1]; i1++; i3++; } while(i2 v3[i3]=v2[i2]; i2++; i3++; } *n3=n1+n2; } void scriere(FILE *f, int v[], int n) { int i; for(i=0;in;i++) fprintf(f,"%d",v[i]); fprintf(f,"\n"); } int main() { FILE * fi = fopen("interclasare.in","r"); FILE * fo = fopen("interclasare.out","w"); citire(); citire(); interclasare(); scriere(); fclose(fi); fclose(fo); return 0; } Edited by jamesbond1975, 22 October 2014 - 18:03. |
#2
Posted 22 October 2014 - 18:07
acuma ia zi drept de unde ai copiat codul ala ?
revino macar dupa ce il copii corect. Ala nu e cod functional nici pe departe |
#3
Posted 22 October 2014 - 18:10
I-am dat copy-paste din codeblocks, dar nu s-a copiat prea bine. De rulat, stiu ca nu ruleaza ...
#include <stdio.h> #include <stdlib.h> void citire(FILE *fi, int v[], int *n) { int i; fscanf(fi,"%d",n); for(i=0;i<(*n);i++) fscanf(fi,"%d",&v[i]); } void interclasare() { int i1, i2, i3; i1=i2=i3=0; while(i1<n1 && i2<n2) { if(v1[i1]<v2[i2]) { v3[i3]=v1[i1]; i1++; } else { v3[i3] = v2[i2]; i2++; } i3++; } while(i1<n1) { v3[i3]=v1[i1]; i1++; i3++; } while(i2<n2) { v3[i3]=v2[i2]; i2++; i3++; } *n3=n1+n2; } void scriere(FILE *fo, int v[], int n) { int i; for(i=0;i<n;i++) fprintf(f,"%d",v[i]); fprintf(f,"\n"); } int main() { FILE * fi = fopen("interclasare.in","r"); FILE * fo = fopen("interclasare.out","w"); citire(); citire(); interclasare(); scriere(); fclose(fi); fclose(fo); return 0; } |
#5
Posted 22 October 2014 - 18:15
O indentare mai calumea ... ?
#include <stdio.h> #include <stdlib.h> void citire(FILE *fi, int v[], int *n) { int i; fscanf(fi,"%d",n); for(i=0;i<(*n);i++) fscanf(fi,"%d",&v[i]); } void interclasare() { int i1, i2, i3; i1=i2=i3=0; while(i1<n1 && i2<n2) { if(v1[i1]<v2[i2]) { v3[i3]=v1[i1]; i1++; } else { v3[i3] = v2[i2]; i2++; } i3++; } while(i1<n1) { v3[i3]=v1[i1]; i1++; i3++; } while(i2<n2) { v3[i3]=v2[i2]; i2++; i3++; } *n3=n1+n2; } void scriere(FILE *fo, int v[], int n) { int i; for(i=0;i<n;i++) fprintf(f,"%d",v[i]); fprintf(f,"\n"); } int main() { FILE * fi = fopen("interclasare.in","r"); FILE * fo = fopen("interclasare.out","w"); citire(); citire(); interclasare(); scriere(); fclose(fi); fclose(fo); return 0; } |
#6
Posted 22 October 2014 - 18:17
deci
cine sunt v1,v2,v3 ? cine si la ce ajuta i1,i2,i3 ? cine sunt n1,n2,n3 ? de ce scrii niste functii cu parametri si le apelezi fara ? si serios chiar nu se putea fara pointeri ? de ce ai facut treaba asta (*n) acolo unde ai facuto ? Edited by yonut_a, 22 October 2014 - 18:18. |
#7
Posted 22 October 2014 - 18:33
Iti da erori peste erori deoarece codul e varza.
Ba l-ai mai si postat anapoda. Tine de bun simt sa il postezi macar curat (formatat si corect dpv sintactic). E chiar minimul de bun simt. Deci deschide un nou topic, de data asta curat, si cu cod pe care l-ai scris tu cu manuta ta, de la zero. Nu uita de indentare. Apasa pe butonul "CODE" in editor, se deschide un dialog, da-i paste acolo la codul formatat corect, si nu te mai atinge de el ulterior, ca editorul mare strica formatarea. Si descrie eroarea concreta. Cate o eroare, nu "o gramada de erori". Daca sunt prea multe erori, taie din cod pana cand ai o singura eroare, iar codul face ceva util, cel putin in principiu, chiar daca nu rezolva complet problema. De exemplu, taie din el pana face "doar citirea", si posteaza o descriere a problemei cu citirea. Si da, TU trebuie sa depui efortul de a ne face noua usoara munca de a te ajuta sa-TI duci la indeplinire misiunea. Nu sa alergam noi ca bezmeticii dupa "o groaza de erori". Topic inchis pentru postare de cod 1. nefunctional, 2. gresit dpv sintactic, 3. cerere de mura-n gura ("am erori peste erori, rezolvati-mi-le") si 4. lipsa unei probleme concrete cu descrierea ei si abordarile pe care le-ai incercat deja intru rezolvarea ei. Edited by OriginalCopy, 22 October 2014 - 18:40. |
Anunturi
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users