LISTA 9
Zad 1.
#include<stdio.h>
#include<stdlib.h>
void f(float, float, float, float&, float&);
int main(){
float a, b, c, p, q;
printf("Podaj wspolczynniki rownania:");
scanf("%f%f%f", &a, &b, &c);
f(a, b, c, p, q);
printf("Wynik:\np = %f\nq = %f\n", p, q);
system("pause");
return 0;
}
void f(float a, float b, float c, float &p, float &q){
float del = b*b - 4*a*c;
p = -b/(2*a);
q = - del/(4*a);
}
Zad. 2
#include<stdio.h>
#include<stdlib.h>
float f(float*, int, float);
int main(){
int N;
float x;
printf("Podaj stopien wielomianu oraz x:");
scanf("%d%f", &N, &x);
float tab[N+1];
for(int i=0;i<N+1;i++){
printf("Podaj wspolczynnik a%d:", N-i);
scanf("%f", tab+i);
}
printf("Wynik: %f\n", f(tab,N,x));
system("pause");
return 0;
}
float f(float *tab, int N, float x){
float wyn = tab[0];
for(int i=1;i<N+1;i++) wyn = wyn*x + tab[i];
return wyn;
}
Zad 3
#include<stdio.h>
#include<stdlib.h>
void f(float tab[][20],int, float tab2[][20]);
int main(){
int N;
printf("Podaj N:");
scanf("%d", &N);
float tab[20][20], tab2[20][20];
for(int i=0;i<N;i++)
for(int j=0;j<N;j++){
printf("Podaj element a[%d, %d]:", i+1, j+1);
scanf("%f", &tab[i][j]);
}
f(tab, N, tab2);
for(int i=0;i<N;i++){
for(int j=0;j<N;j++){
printf("%10.6f ", tab2[i][j]);
}
printf("\n");
}
system("pause");
return 0;
}
void f(float tab[][20], int N, float tab2[][20]){
for(int i=0;i<N;i++)
for(int j=0;j<N;j++)
tab2[j][i] = tab[i][j];
}
Zad 4
#include<stdio.h>
#include<stdlib.h>
void f(float tab[20][20], int&, int&, float&, int, int, int);
int main(){
float tab[20][20], wyn;
int N, m_m, p_o, k ,w; // m_m -> min/max ; p_o -> pierwszy/ostatni
printf("Podaj N:");
scanf("%d", &N);
for(int i=0;i<N;i++)
for(int j=0;j<N;j++){
printf("Podaj element a[%d, %d]:", i+1, j+1);
scanf("%f", &tab[i][j]);
}
printf("Wskazac wartosc:\n1. Minimalna\n2. Maksynalna\n");
scanf("%d", &m_m);
printf("Wskazac miejsce wystapienia:\n1. Pierwsze\n2. Ostatni\n");
scanf("%d", &p_o);
f(tab, w, k, wyn, m_m, p_o, N);
printf("Wartosc: %f\nKolumna: %d\nWiersz: %d\n", wyn, k, w);
system("pause");
return 0;
}
void f(float tab[20][20], int &w, int &k, float &wyn, int m_m, int p_o, int N){
wyn = tab[0][0];
k=1;
w=1;
for(int i=0;i<N;i++){
for(int j=0;j<N;j++){
if(p_o==2){
if(m_m==2){
if(wyn<=tab[i][j]){
wyn = tab[i][j];
w = i+1;
k = j+1;
}
}
if(m_m==1){
if(wyn>=tab[i][j]){
wyn = tab[i][j];
w = i+1;
k = j+1;
}
}
}
if(p_o==1){
if(m_m==2){
if(wyn<tab[i][j]){
wyn = tab[i][j];
w = i+1;
k = j+1;
}
}
if(m_m==1){
if(wyn>tab[i][j]){
wyn = tab[i][j];
w = i+1;
k = j+1;
}
}
}
}
}
}
Zad 5
#include<stdio.h>
#include<stdlib.h>
int f(char*, char*);
int main(){
char tab[255], tab2[255];
printf("Wpisz lancuch znakowy: ");
gets(tab);
printf("Wpisz szukana fraze: ");
gets(tab2);
printf("szukana fraza wystapila %d razy w podanym tekscie.\n", f(tab, tab2));
system("pause");
return 0;
}
int f(char *tab, char *tab2){
int wyn=0;
bool kon=false;
for(int i=0;i<255;i++){
if(tab[i] =='\0') break;
if(tab[i] == tab2[0]){
for(int j=1;;j++){
if(tab2[j] == '\0'){
wyn++;
break;
}
if(tab[i+j] == '\0'){
kon=true;
break;
}
if(tab[i+j] != tab2[j]) break;
}
}
if(kon) break;
}
return wyn;
}