Pomoc kod programiranja u C

poruka: 9
|
čitano: 3.488
|
moderatori: Lazarus Long, XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
15 godina
neaktivan
offline
Pomoc kod programiranja u C

Imam problema kod rijesavanja odredjenih zadataka u C-u. Pa ako netko s iskustvom zeli pomoc, zahvalan sam mu. Programiram u Linuxu.

Evo zadataka:

 

1. Napisati program koji će ispisati cijelu ASCII tablicu u tekstualnu datoteku naziva ascii.txt (neka se datoteka stvori/smjesti u home direktorij). Datoteku urediti na način da se u svakom redu nalazi točno 10 znakova iz ASCII tablice (osim u zadnje, naravno).

 

ovo je moj kod, treba mi pomoc jer nisam siguran dal ispisuje dobro.

 

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

int main()
{
int i,j;
FILE *tok;
tok=fopen("ascii.txt", "a");
for(i=0; i<13; i++) {
for(j=0;j<10;j++) {
fprintf(tok,"%c",j+10*i);
} fprintf(tok,"\n");}
fclose(tok);
return 0;
}

 

 

 

i jos jedan zadatak:

2. Napisati funkciju prototipa:
int ubaci(char *niz, int mjesto, char znak) ,
koja će na zadanom mjestu u zadanom nizu znakova ubaciti zadani znak (znakovi od zadanog mjesta dalje se pomiču za jedno mjesto naprijed). Smatra se da je pozicija prvog znaka u nizu 0. Ako je zadano mjesto izvan niza, funkcija ne radi ništa i vraća 1; u protivnom vraća 0. Pretpostaviti da u nizu ima dovoljno mjesta za dodatni znak.

Disarm you with a smile
 
0 0 hvala 0
17 godina
neaktivan
offline
Pomoc kod programiranja u C

Nemam baš iskustva, al sam kolko-tolko voljan pomoć :)

 

Mislim da ti prvi dobro ispisuje sve, ali u zadnjem redu ti doda još 2 nepostojeća znaka. Evo moje verzije na brzaka:

 

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

int main()
{
   int i=1;
   FILE *tok;
   tok=fopen("ascii.txt", "a");
   
   while(i<128)
   {
      if ( i%10==0 )
         fprintf (tok,"\n");
      fprintf (tok,"%c%c",i ,32);
      i++;
   }
      
   fclose(tok);
   return 0;
}

 

Ubacio sam još i razmak između svakog znaka. Ako smeta, makni onaj dodatni %c i 32 u 14. liniji koda...

Evo usporedbe mog(lijevo) i tvog(desno) ispisa u datoteku.

blah blah
 

 

Za drugi mi je malo kasno :)

We're all mad here.
Poruka je uređivana zadnji put pet 10.9.2010 1:51 (niki).
Moj PC  
1 0 hvala 1
17 godina
offline
Pomoc kod programiranja u C

Ovaj drugi bi bilo lakše riješiti preko string varijable, ali kad se već traži char niz, ja sam to riješio preko dva pomoćna char niza u napisanoj funkciji:

 

 

#include<stdio.h>
#include<string.h>

int ubaci(char *niz, int mjesto, char c) {
    int i, j=0;
    char pom1[100], pom2[100];
    if(mjesto>strlen(niz)-1) {
       return 1;
    }
    for(i=0; i<mjesto; i++)
       pom1[i]=niz[i];
    pom1[mjesto]=c;
    pom1[mjesto+1] = '\0';

    for(i=mjesto; niz[i] !='\0'; i++, j++)
       pom2[j]=niz[i];
    pom2[j] = '\0';

    for(i=0;  pom1[i] != '\0'; i++)
       niz[i]=pom1[i];
    for(i=0; pom2[i] != '\0'; i++)
       niz[i+mjesto+1]=pom2[i];

    return 0;
}

   
int main()
{
    char niz[250] = "Zadtak u C programskom jeziku", c;
    int mjesto;
    printf("Zadani niz: %s", niz);
    printf("\nUnesi znak za umetanje: ");
    scanf("%c", &c);
    printf("\nUnesi poziciju u nizu na koju zelis umetnuti znak: ");
    scanf("%d", &mjesto);

    if(ubaci(niz, mjesto, c))
       printf("Zadana pozicija za umetanje znaka u zadani niz nalazi se izvan niza\n");
   
    else
    
       printf("Niz poslije umetanja znaka: %s\n", niz);
}

 
1 0 hvala 1
17 godina
offline
Pomoc kod programiranja u C

Za ovaj prvi bi trebalo poći od i=0, inače je sve OK.

 

 

#include<stdio.h>


int main()
{
    int i;
    FILE* f;

    f = fopen("ascii.txt", "w");
    for(i=0; i<128; i++) {
       if(i%10==0)
          fprintf(f, "\n");
       fprintf(f, "%c ", i);      
    }
    fclose(f);
    return 0;
}

 
1 0 hvala 1
14 godina
neaktivan
offline
RE: Pomoc kod programiranja u C

zdravo treba mi pomoć u vezi programa u c-u,,,, ako netko zna da mi da barem upute ,,,,, Unaprijed zahvalan!!!

Napraviti program kojii zracunava rjesenja jednadzbi

  a11x1 + a12x2 =b1

 a21x1 + a22x2 =b2

    nepoznate su x1 i x2 koeficijenti a11,a12,b1,b2,a21,a22 se unose sa tastature, ako sistem jednadzbi nema rjesenjeprogram ispisuje poruku  rjesenje ne  postoji

Takoder treba ispisati odgovarajucu poruku ako sistem ima beskonacno mnogo rjesenja              

 

bole
Poruka je uređivana zadnji put pon 18.10.2010 22:24 (Boškobuha).
14 godina
neaktivan
offline
Pomoc kod programiranja u C

jeli mi netko može pomoći  u vezi programa,,,prijedlozi i ideje su mi korisne

moram napraviti program koji će na monitoru ispisati prvih n cijelih brojeva i vrijednost funkcije f(n)=2n3 - 4n +5

ispi na zaslonu treba biti u slijedecem formatu;

n=1       f(n)=3

n=2       f(n)=13

n=3       f(n)=47

....

broj n se unosi sa tipkovnice i treba biti manji od 20. ako je broj n veći ili jednak 20 ili manji od j program ne ispisuje nista koristti FOR petlju

 

bole
 
0 0 hvala 0
17 godina
offline
RE: Pomoc kod programiranja u C
Boškobuha kaže...

zdravo treba mi pomoć u vezi programa u c-u,,,, ako netko zna da mi da barem upute ,,,,, Unaprijed zahvalan!!!

Napraviti program kojii zracunava rjesenja jednadzbi

  a11x1 + a12x2 =b1

 a21x1 + a22x2 =b2

    nepoznate su x1 i x2 koeficijenti a11,a12,b1,b2,a21,a22 se unose sa tastature, ako sistem jednadzbi nema rjesenjeprogram ispisuje poruku  rjesenje ne  postoji

Takoder treba ispisati odgovarajucu poruku ako sistem ima beskonacno mnogo rjesenja              

 

Dosta ti je napisati zadatak na jednom mjestu, ne moraš pisati jedan te isti na svim temama, ili najbolje otvori temu, npr, "C - dvije jednadžbe sa dvije nepoznanice".

Ovdje imaš rješenje:

http://www.bug.hr/forum/topic/programiranje/racunanje-kvadratne-jednadzbe/64999.aspx?page=1&jumpto=1211936&sort=asc&view=flat

 

14 godina
neaktivan
offline
RE: Pomoc kod programiranja u C
oke,,, hvala lijepa
bole
14 godina
neaktivan
offline
RE: Pomoc kod programiranja u C

a jel mi možeš malo objasniti rad programa,, jer će me pitati šta program radi u kojem koraku a   rečeno mi je da riješim preko matrica sistem linearnih jednadžbi Dx1,Dx2 i D

bole
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice