Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ZADANIE 1////
- #include <stdio.h>
- unsigned int newton(unsigned int, unsigned int);
- int main(){
- unsigned int n, k;
- printf("Podaj n: ");
- scanf("%d", &n);
- for(k = 0; k <= n; k++) printf("%d ", newton(n,k));
- return 0;
- }
- unsigned int newton(unsigned int n, unsigned int k){
- if(k == 0 || k == n) return 1;
- else return newton(n-1,k) + newton(n-1,k-1);
- }
- ZAD 2////
- #include <stdio.h>
- unsigned int newton(unsigned int, unsigned int);
- double Ksukcesow(unsigned int, unsigned int, double, double);
- int main(){
- unsigned int n, k;
- double p, q;
- printf("Podaj liczbe prob: ");
- scanf("%d", &n);
- printf("Podaj liczbe sukcesow: ");
- scanf("%d", &k);
- do{
- printf("Podaj prawdopodobienstwo: (p nalezy do <0,1>) ");
- scanf("%lf", &p);
- }while(p < 0 || p > 1);
- q = 1-p;
- printf("Prawdopodobienstwo %d sukcesow w %d probach wynosi: %lf", k, n, Ksukcesow(n, k, p, q));
- return 0;
- }
- unsigned int newton(unsigned int n, unsigned int k){
- if(k == 0 || k == n) return 1;
- else return newton(n-1,k) + newton(n-1,k-1);
- }
- double Ksukcesow(unsigned int n, unsigned int k, double p, double q){
- //potegowanie p
- int i;
- double pot = 1;
- double pot2 = 1;
- for(i = 0; i < k; i++) pot*=p;
- for(i = 0; i < n-k; i++) pot2*=q;
- return newton(n,k) * pot * pot2;
- }
- ZAD3 ////
- #include <stdio.h>
- unsigned int newton(unsigned int, unsigned int);
- double Cumulative(unsigned int, unsigned int, double, double);
- int main(){
- unsigned int n, k;
- double p, q;
- printf("Podaj liczbe prob: ");
- scanf("%d", &n);
- printf("Podaj liczbe sukcesow: ");
- scanf("%d", &k);
- do{
- printf("Podaj prawdopodobienstwo: (p nalezy do <0,1>) ");
- scanf("%lf", &p);
- }while(p < 0 || p > 1);
- q = 1-p;
- printf("Prawdopodobienstwo %d lub mniej sukcesow w %d probach wynosi: %lf", k, n, Cumulative(n, k, p, q));
- return 0;
- }
- unsigned int newton(unsigned int n, unsigned int k){
- if(k == 0 || k == n) return 1;
- else return newton(n-1,k) + newton(n-1,k-1);
- }
- double Cumulative(unsigned int n, unsigned int k, double p, double q){
- //potegowanie p
- int i;
- double wynik = 0;
- double pot = 1;
- double pot2 = 1;
- for(i = 0; i < k; i++) pot*=p;
- for(i = 0; i < n-k; i++) pot2*=q;
- for(i = 0; i <= k; i++) wynik+=newton(n,i) * pot * pot2;
- return wynik;
- }
- /////ZAD 4
- #include <stdio.h>
- #include <math.h>
- double Hoeffding(unsigned int, unsigned int, double);
- int main(void){
- unsigned int n, k;
- double p;
- printf("Podaj n,k p: ");
- scanf("%d", &n);
- scanf("%d", &k);
- scanf("%lf", &p);
- printf("%lf", Hoeffding(k,n,p));
- }
- double Hoeffding(unsigned int k, unsigned int n, double p){
- return exp((-2/n) * pow(n*p-k, 2));
- }
- //ZADANIE 5
- #include <stdio.h>
- #define MAX 100
- int tab[MAX][MAX];
- int newton(int n, int k){
- int i, j;
- for(i = 1; i < MAX; i++){
- for(j = 0; j < MAX; j++){
- tab[i][j] = 0;
- }
- }
- for(i = 0; i < MAX; i++) tab[i][0] = 1; //zerowa kolumna
- for(i = 0; i < MAX; i++) tab[i][i] = 1; //diagonala
- for(i = 1; i < MAX; i++){
- for(j = 1; j < MAX; j++){
- tab[i][j] = tab[i-1][j-1] + tab[i-1][j];
- }
- }
- return tab[n][k];
- }
- int main(void){
- int n, k;
- printf("Podaj n i k: ");
- scanf("%d%d", &n, &k);
- printf("%d", newton(n, k));
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement