Forum Forum grupy E.1 i Ez.1
Forum grupy E.1 i Ez.1 Elektroniki i Telekomunikacji
 
 FAQFAQ   SzukajSzukaj   UżytkownicyUżytkownicy   GrupyGrupy  GalerieGalerie   RejestracjaRejestracja 
 ProfilProfil   Zaloguj się, by sprawdzić wiadomościZaloguj się, by sprawdzić wiadomości   ZalogujZaloguj 

Poprawka z PP

 
Napisz nowy temat   Odpowiedz do tematu    Forum Forum grupy E.1 i Ez.1 Strona Główna -> Sem.I i Sem.II
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
syl242
Administrator



Dołączył: 30 Lis 2006
Posty: 53
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Koszalin

PostWysłany: Sob 16:01, 27 Sty 2007    Temat postu: Poprawka z PP

termin poprawy z PP jest na forum infopm
dopracowałem kody źródłowe:
program 1
Kod:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define ROZMIAR 10

void losuj(int n, int *tab, int p, int k)
{int i;

 srand(time(NULL));

  for (i=0;i<n;++i)
  {
    tab[i]=rand()%(1+k-p)+p;
  }
}

int Max(int n, int *tab)
{
int i,max;
   max=tab[0];
   for (i=0;i<n;++i)
    {
     if (max<tab[i]) max=tab[i];
     }
     return max;
}

int Min(int n, int *tab)
{
int i,min;
min=tab[0];
   for (i=0;i<n;++i)
   {
    if (min>tab[i]) min=tab[i];
   }
  return min;
}

int main(void)
{
 int tablica[ROZMIAR];
 int i,b,a;

 printf("Podaj poczatek przedzialu:"); scanf("%d", &a);
 printf("\n");
 printf("Podaj koniec przedzialu:"); scanf("%d", &b);

  losuj(ROZMIAR,tablica,a,b);

  for (i=0;i<ROZMIAR;++i)
  { printf("%d ",tablica[i]); }

printf(" \nmax=%d\n",Max(ROZMIAR,tablica));
printf("min=%d",Min(ROZMIAR,tablica));
getchar();
getchar();
return 0;
}


program 2
Kod:



#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>
#define ROZMIAR 10

void losuj(int n, int *tab, int p, int k)
{
int i;

srand(time(NULL));

for (i=0;i<n;++i)
 {
  tab[i]=rand()%(1+k-p)+p;
 }

}
    /* MAXIMUM*/
int Max(int n, int *tab)
{
int i,max;
 max=0;
 for (i=0;i<n;++i)
 {
  if (tab[max]<tab[i]) max=i;
 }

return max;
}
    /*MINIMUM*/
int Min(int n, int *tab)
{
int i,min;
min=0;
for (i=0;i<n;++i)
{
if (tab[min]>tab[i]) min=i;

}

return min;
}
/* PROGRAM */
int main(void)
{
int tablica[ROZMIAR];
int i, p ,k;
printf("Podaj p= "); scanf("%d", &p);
printf("Podaj k="); scanf("%d", &k);

losuj(ROZMIAR,tablica,p,k);

for (i=0;i<ROZMIAR;++i)
{
 if (i==Max(ROZMIAR,tablica)) textcolor(RED);
 if (i==Min(ROZMIAR,tablica)) textcolor(GREEN);
 cprintf("%3d ",tablica[i]);
 textcolor(7);

}
 printf("\nindeks najmniejszej wartosci to %d",Min(ROZMIAR,tablica ));
 printf("\nindeks najwiekszej wartosci to %d", Max(ROZMIAR,tablica));
getchar();
getchar();
return 0;

}


program 3
Kod:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#define roz 100

void Losuj(int n, int *Tab, int p, int k)
{
int i;
for (i=0;i<n;i++)
  {
  Tab[i]=(rand()%(k-p+1))+p;
  }
}

int Min(int n, int *Tab)
{
int i,j,x1=0,x2=0,esp,minw;
minw=Tab[0];
esp=Tab[0];
for (i=0;i<n;i++)
  {
  if (Tab[i]==esp) x1++;//liczy ile razy powtarza sie pier. element
  }

for (j=1;j<n;j++)
  {
  esp=Tab[j];
  for (i=0;i<n;i++)
   {
   if (Tab[i]==esp) x2++;
   }
  if (x2<x1)
   {
   x1=x2;
   minw=esp;
   }
  x2=0;
  }
return minw;
}

int Max(int n, int *Tab)
{
int i,j,x1=0,x2=0,esp,maxw;
maxw=Tab[0];
esp=Tab[0];
for (i=0;i<n;i++)
  {
  if (Tab[i]==esp) x1++;//liczy ile razy powtarza sie pier. element
  }

for (j=1;j<n;j++)
  {
  esp=Tab[j];
  for (i=0;i<n;i++)
   {
   if (Tab[i]==esp) x2++;
   }
  if (x2>x1)
   {
   x1=x2;
   maxw=esp;
   }
  x2=0;
  }
return maxw;
}

int main()
{
int i,in,ix,a,b;
int tab[roz];
printf("\nPodaj p="); scanf("%d", &a);
printf("\nPodaj k="); scanf("%d", &b);


printf("\n\n");
Losuj(roz,tab,a,b);
for (i=0;i<roz;i++)
  {
     if (tab[i]==Min(roz,tab))
     {
     textcolor(RED);
     cprintf("%d  ",tab[i]);
     }

     if (tab[i]==Max(roz,tab))
     {
     textcolor(YELLOW);
     cprintf("%d  ",tab[i]);
     }

     if (tab[i]!=Min(roz,tab) && tab[i]!=Max(roz,tab))
     {
     printf("%d  ",tab[i]);
     }

  }
getchar();
getchar();
return 0;
}


program 4
Kod:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>
#define ROZMIAR 10

void losuj(int n, int *tab, int p, int k)
{
int i;

srand(time(NULL));

for (i=0;i<n;++i)
 {
  tab[i]=rand()%(1+k-p)+p;
 }

}

void wyswietl(int n, int *tab, int k)
{
int i;

for (i=0;i<n;++i)
 {
  if (i!=0 && i%k==0) printf("\n");
  printf("%7d",tab[i]);
 }
}

float srednia(int n, int *tab)
{
int i;
float srd=0;
for (i=0;i<n;++i)
 {
  srd=srd+tab[i];
 }
return srd/n;
}
 /* program*/
int main(void)
{
int tablica[ROZMIAR];
int p,k,z;
printf("Podaj p="); scanf("%d", &p);
printf("\n");
printf("Podaj k="); scanf("%d", &k);
printf("Podaj po ile liczb ma byc wyswietlonych w jednym wierszu:");
scanf("%d",&z);

losuj(ROZMIAR,tablica,p,k);
wyswietl(ROZMIAR,tablica,z);
printf("\n---------\nSrednia=%.3f\n",srednia(ROZMIAR,tablica));
getchar();
getchar();

return 0;
}


program 5
Kod:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>

#define ROZMIAR 100

void losuj(int n, int *tab, int p, int k)
{
int i;

srand(time(NULL));

for (i=0;i<n;++i)
 {
  tab[i]=rand()%(1+k-p)+p;
 }

}

void wyswietl(int n, int *tab, int k)
{
int i;

for (i=0;i<n;++i)
 {
  if (i!=0 && i%k==0) printf("\n");
  printf("%7d",tab[i]);
 }
}


void sortuj(int n, int *tab)
{
int  i,a,x;
do
  {
  x=0;
  for (i=1;i<n;i++)
   {
   if(tab[i] < tab[i-1])
     {
     a=tab[i];
     tab[i]=tab[i-1];
     tab[i-1]=a;
     x=1;
     }
   }
  }
while (x==1);
}

int main(void)
{
int tablica[ROZMIAR];
int k;
int a,b,z;
printf("\n");
printf("podaj poczatek przedzialu:");  scanf("%d", &a);
printf("\n");
printf("podaj koniec przedzialu:"); scanf("%d", &b);
printf("Podaj ile liczb ma byc wyswietlonych jednym wierszu:"); scanf("%d",&z);
losuj(ROZMIAR,tablica,a,b);
wyswietl(ROZMIAR,tablica,z);
sortuj(ROZMIAR,tablica);
printf("\n--------------------------------------------------------------------------\n");
wyswietl(ROZMIAR,tablica,z);
getchar();
getchar();
return 0;
}


program 6
Kod:

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

#define ROZMIAR 10

void losuj(int n, int *tab, int p, int k)
{
int i;

srand(time(NULL));

for (i=0;i<n;++i)
 {
  tab[i]=rand()%(1+k-p)+p;
 }

}

void wyswietl(int n, int *tab, int k)
{
int i;

for (i=0;i<n;++i)
 {
  if (i!=0 && i%k==0) printf("\n");
  printf("%7d",tab[i]);
 }
}

void odwroc(int n, int *tab)
{
int i,tmp;

for (i=0;i<n/2;++i)
 {
  tmp=tab[i];
  tab[i]=tab[n-i-1];
  tab[n-i-1]=tmp;
 }

}


int main(void)
{
int tablica[ROZMIAR];
int p,k,z;

printf("Podaj p="); scanf("%d", &p);
printf("\n");
printf("Podaj k="); scanf("%d", &k);
printf("Podaj ile ma byc liczb w jednym wierszu:"); scanf("%d",&z);
losuj(ROZMIAR,tablica,p,k);
wyswietl(ROZMIAR,tablica,z);
odwroc(ROZMIAR,tablica);
printf("\n--------------------------------------------------------------------------\n");
wyswietl(ROZMIAR,tablica,z);
getchar();
getchar();

return 0;
}


program 7
Kod:
#include <stdio.h>
#include <stdlib.h>
#define roz 12


void Losuj(int n, int *Tab, int p, int k)
{
int i;
for (i=0;i<n;i++)
  {
  Tab[i]=rand()%(1+k-p)+p;
  }
}

void Wyswietl (int n, int *Tab, int k)
{
int i;
for (i=0;i<n;i++)
  {
  if ((i%k)==0) printf("\n");
  printf("%d  ",Tab[i]);
  }
}

void Dzielniki(int n, int *Tab, int m)
{
int  i;
for (i=0;i<n;i++)
  {
  if (m%Tab[i]==0) printf ("%d  ",Tab[i]);
  }
}

int main()
{
 int i,p,k,z,n;

 int tab[roz];

 system("CLS");

 printf("podaj p="); scanf("%d",&p);
 printf("\npodaj k="); scanf("%d", &k);

 printf("ile liczb ma byc w jednym wierszu:"); scanf("%d", &z);

 printf("Podaj liczbe ktorej chcesz otrzymac dzielniki:"); scanf("%d", &n);

 Losuj(roz,tab,p,k);
 printf("\n\nTablica:\n");

Wyswietl(roz,tab,z);

printf("\n\nDzielniki liczby %d :\n",n);
Dzielniki(roz,tab,n);


getchar();
getchar();
return 0;
}






program 8
Kod:
#include <stdio.h>
#include <stdlib.h>
#define roz 40

void Losuj(int n, int *Tab, int p, int k)
{
int i;
for (i=0;i<n;i++)
  {
  Tab[i]=(rand()%(k-p+1))+p;
  }
}

void WyswietlPrzedzialami (int n, int *Tab, int k)
{
int i;
for (i=0;i<n;i++)
  {
  if ((i%k)==0) printf("\n");
  printf("%d  ",Tab[i]);
  }
}


int main(void)
{

int i,a,b,prz;
int tab[roz];

printf("Podaj poczatek przedzialu:"); scanf("%d",&a);
printf("\n");
printf("Podaj koniec przedzialu:"); scanf("%d",&b);


Losuj(roz,tab,a,b);
printf("\nPodaj po ile liczb ma byc w przedziale: ");
scanf("%d",&prz);
while (prz>10 || prz<1)
  {
  printf("\nPrzedzial nieprawidlowy");
  printf("\nPodaj ponownie rozmiar przedzialu: ");
  scanf("%d",&prz);
  }
printf("\n\nTablica:\n");
WyswietlPrzedzialami(roz,tab,prz);
getchar();
getchar();
return 0;
}


program 9
Kod:
#include <stdio.h>
#include <stdlib.h>

void LiczZnaki(char *SciezkaDoPliku, int *IleBajtow)
{
char LI[500];
int i,j;
FILE *plik;
plik=fopen(SciezkaDoPliku,"r");
for (i=0;i<256;i++)
{IleBajtow[i]=0;}

while(fgets(LI,499,plik)!=NULL)
  {
  for (i=0;LI[i]!=NULL;i++)
  {
   for(j=0;j<256;j++)
    {
      if (LI[i]==j) IleBajtow[j]++;
    }
   }
  }
fclose(plik);
}

void Wyswietl(int n, int *Tab, int k)
{
int i;
for (i=0;i<n;i++)
  {
  if (i%k==0) printf("\n");
  printf ("%c - %i  ",i,Tab[i]);
  }
}


int main()
{
 int z;
 int IleBajtow[256];
 char Link[]="PLIK.txt";
 printf("podaj liczbe znakow w wierszu:");
 scanf("%d", &z);

 system("CLS");

 LiczZnaki(Link,IleBajtow);
 Wyswietl(256,IleBajtow,z);
 getchar();
 getchar();
 return 0;
 }


program 10
Kod:
#include <stdio.h>
#include <stdlib.h>

char SzukajMax(char *SciezkaDoPliku)
{
char lix,LI[500];
int i=0,j=0,x1=0,x2=0;
FILE *plik;

for(j=0;j<256;j++)
{
  plik=fopen(SciezkaDoPliku,"r");
  while(fgets(LI,499,plik)!=NULL)
   {
   for (i=0;LI[i]!=NULL;i++)
     {
     if (j==LI[i]) x2++;
     }
   }
  fclose(plik);
  if(x2>x1)
   {
   x1=x2;
   lix=j;
   }
   x2=0;
}
return lix;
}

char SzukajMin(char *SciezkaDoPliku)
{
char lix,LI[500];
int i=0,j=0,x1=0,x2=0;
FILE *plik;

for(j=0;j<256;j++)
{
  plik=fopen(SciezkaDoPliku,"r");
  while(fgets(LI,499,plik)!=NULL)
   {
   for (i=0;LI[i]!=NULL;i++)
     {
     if (j==LI[i]) x2++;
     }
   }
  fclose(plik);
  if (x1==0 && x2!=0)
   {
   x1=x2;
   lix=j;
   }
  if(x1!=0 && x2<x1 && x2!=0)
   {
   x1=x2;
   lix=j;
   }
   x2=0;
}
return lix;
}

int main()
{
char Link[]="PLIK.txt";
system("CLS");
printf("\n\nNajwiecej razy wystepuje element: %c",SzukajMax(Link));
printf("\n\nNajmniej razy wystepuje element: %c",SzukajMin(Link));
system("PAUSE");
getchar();
return 0;
}


Post został pochwalony 0 razy

Ostatnio zmieniony przez syl242 dnia Nie 22:57, 28 Sty 2007, w całości zmieniany 4 razy
Powrót do góry
Zobacz profil autora
Yeti
Studencik



Dołączył: 20 Gru 2006
Posty: 4
Przeczytał: 0 tematów

Ostrzeżeń: 0/3

PostWysłany: Nie 17:45, 28 Sty 2007    Temat postu:

Szkoda że tylko do 10 programu. Osoby z listy, które są na 11,12,13 i 14 pozycji mają niezle pozamiatane (Szkoda że jestem wśród nich xD).

Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Adriano7
Studencik



Dołączył: 08 Gru 2006
Posty: 14
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Kołobrzeg

PostWysłany: Nie 20:14, 28 Sty 2007    Temat postu:

Yeti napisał:
Szkoda że tylko do 10 programu. Osoby z listy, które są na 11,12,13 i 14 pozycji mają niezle pozamiatane (Szkoda że jestem wśród nich xD).

To co on będzie dawał po kolei wg listy od 1 zadania do 14 ? To ja jak jestem na początku listy to może się uda dostać jeden z pierwszych programów Smile


Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
syl242
Administrator



Dołączył: 30 Lis 2006
Posty: 53
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Koszalin

PostWysłany: Nie 20:17, 28 Sty 2007    Temat postu:

spoko, wrzucę do 12

Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Adriano7
Studencik



Dołączył: 08 Gru 2006
Posty: 14
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Kołobrzeg

PostWysłany: Nie 20:27, 28 Sty 2007    Temat postu:

Ludzie to prawda, że Majchrzu ma jakiś programik, który śledzi co każdy studencik robi na swoim kompie ? Słyszał ktoś coś o tym?

Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
syl242
Administrator



Dołączył: 30 Lis 2006
Posty: 53
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Koszalin

PostWysłany: Nie 20:29, 28 Sty 2007    Temat postu:

program 11

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

char SzukajMax(char *SciezkaDoPliku)
{
char lix,LI[500];
int i=0,j=0,x1=0,x2=0;
FILE *plik;

for(j=0;j<256;j++)
{
  plik=fopen(SciezkaDoPliku,"r");
  while(fgets(LI,499,plik)!=NULL)
   {
   for (i=0;LI[i]!=NULL;i++)
     {
     if (j==LI[i]) x2++;
     }
   }
  fclose(plik);
  if(x2>x1)
   {
   x1=x2;
   }
   x2=0;
}
return x1;
}

char SzukajMin(char *SciezkaDoPliku)
{
char lix,LI[500];
int i=0,j=0,x1=0,x2=0;
FILE *plik;

for(j=0;j<256;j++)
{
  plik=fopen(SciezkaDoPliku,"r");
  while(fgets(LI,499,plik)!=NULL)
   {
   for (i=0;LI[i]!=NULL;i++)
     {
     if (j==LI[i]) x2++;
     }
   }
  fclose(plik);
  if (x1==0 && x2!=0) x1=x2;
  if(x2<x1 && x2!=0) x1=x2;
   x2=0;
}
return x1;
}

int main()
{
char Link[]="PLIK.txt";
system("CLS");
printf("\n\nSymbol wystepujcy najczesciej powtarza sie: %i",SzukajMax(Link));
printf("\n\nSymbol wystepujcy najzadziej powtarza sie: %i",SzukajMin(Link));
getchar();
return 0;
}


program 12
Kod:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

void RysujRamke (int X1, int Y1, int X2, int Y2, char Znak, int Kolor, int KolorTla)
{
int x,y;
gotoxy (X1,Y1);
for (y=Y1;y<Y2+1;y++)
{
  gotoxy(X1,y);
  for (x=X1;x<X2+1;x++)
  {
  if (x==X1 || x==X2 || y==Y1 || y==Y2)
   {
   textcolor(Kolor);
   textbackground(BLACK);
   cprintf("%c",Znak);
   }
  if (x!=X1 && x!=X2 && y!=Y1 && y!=Y2)
   {
   textbackground(KolorTla);
   cprintf(" ");
   }
  }
}
}

int main()
{
   int x1, y1, x2, y2, kolor, kolortla;

   printf("\nPodaj x1:"); scanf("%d", &x1);
   printf("\nPodja y1:"); scanf("%d", &y1);
   printf("\nPodaj x2:"); scanf("%d", &x2);
   printf("\nPodaj y2:"); scanf("%d", &y2);
   printf("\nPodaj kolor ramki-liczba:"); scanf("%d",&kolor);
   printf("\nPodaj kolor tla-liczba: "); scanf("%d", &kolortla);

system("CLS");
RysujRamke(x1,y1,x2,y2,'#',kolor,kolortla);
getchar();
getchar();
return 0;
}


program 14
Kod:
#include <stdio.h>
#include <stdlib.h>

void main(void)
{
FILE * Czytany;
FILE * Zapisywany;
fpos_t Rozmiar = 0;
long long int Skopiowano = 0;
char Bajt;
char NazwaPliku[255];

printf("Podaj sciezke do kopiowanego pliku = ");
scanf("%s", NazwaPliku);

Czytany = fopen(NazwaPliku, "r");
if(!Czytany)
{
printf("Nie odnaleziono pliku!\n");
system("pause");
return;
}
else
{
fseek(Czytany, 0, SEEK_END);
fgetpos(Czytany, &Rozmiar);

printf("Podaj sciezke kopi pliku = ");
scanf("%s", NazwaPliku);
Zapisywany = fopen(NazwaPliku, "w+");
if(!Zapisywany)
{
fclose(Czytany);
printf("Nie mozna otworzyc pliku!\n");
system("pause");
return;
}
else
{
Skopiowano = 0;
fseek(Czytany, 0, SEEK_SET);
while(fscanf(Czytany, "%c", &Bajt) != EOF)
{
fprintf(Zapisywany, "%c", Bajt);
Skopiowano++;
system("cls");
printf("Rozmiar = %d bajtow.\n", Rozmiar);
printf("Skopiowano = %3.2f%%.\n", (float) (100 * Skopiowano) / (float)
(Rozmiar));
}
fclose(Zapisywany);
}
fclose(Czytany);
}
system("pause");
}


Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Adriano7
Studencik



Dołączył: 08 Gru 2006
Posty: 14
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Kołobrzeg

PostWysłany: Nie 22:37, 28 Sty 2007    Temat postu:

program 2. jest taki sam jak pierwszy, a on miał wyświetlać wartości w kolorach. Ma ktoś poprawiony program 2. ?

Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
syl242
Administrator



Dołączył: 30 Lis 2006
Posty: 53
Przeczytał: 0 tematów

Ostrzeżeń: 0/3
Skąd: Koszalin

PostWysłany: Nie 22:58, 28 Sty 2007    Temat postu:

Adriano7 napisał:
program 2. jest taki sam jak pierwszy, a on miał wyświetlać wartości w kolorach. Ma ktoś poprawiony program 2. ?


już wkleiłem dobry kod źródłowy Very Happy


Post został pochwalony 0 razy
Powrót do góry
Zobacz profil autora
Wyświetl posty z ostatnich:   
Napisz nowy temat   Odpowiedz do tematu    Forum Forum grupy E.1 i Ez.1 Strona Główna -> Sem.I i Sem.II Wszystkie czasy w strefie EET (Europa)
Strona 1 z 1

 
Skocz do:  
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach


fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2002 phpBB Group
Regulamin