ProgIng - Programación en Ingeniería
Loading...
Searching...
No Matches
Ejemplo023.c
Go to the documentation of this file.
1
#include <stdio.h>
2
#include <stdlib.h>
3
#include <time.h>
4
#include <math.h>
5
6
#define N 1000
7
8
int
main
(
int
argc,
char
*argv[])
9
{
10
int
n, i, flag, op;
11
float
max
,
min
, aux, x[
N
], vmx, vmn, md, st, z[
N
], cn, nr;
12
srand(time(NULL));
13
do
{
14
printf(
"Ingrese el numero de datos: "
);
15
scanf(
"%d"
, &n);
16
}
while
(n<1||n>
N
);
17
printf(
"Ingrese el numero maximo: "
);
18
scanf(
"%f"
, &
max
);
19
printf(
"Ingrese el numero minimo: "
);
20
scanf(
"%f"
, &
min
);
21
if
(
max
<
min
)
22
{
23
aux =
max
;
24
max
=
min
;
25
min
= aux;
26
}
27
for
(i=0, vmn=
max
, vmx=
min
, md=0, st=0; i<n; i++)
28
{
29
x[i] = ((
max
-
min
)*rand())/RAND_MAX+
min
;
30
printf(
"X[%d] = %f\n"
, i+1, x[i]);
31
if
(vmn>x[i])
32
vmn = x[i];
33
if
(vmx<x[i])
34
vmx = x[i];
35
md+=x[i];
36
st+=(x[i]*x[i]);
37
}
38
md/=n;
39
st/=n;
40
st-=(md*md);
41
st=sqrt(st);
42
printf(
"Max: %f\n Min = %f\n Media = %f\n D. E. = %f\n"
,
43
vmx, vmn, md, st);
44
flag = 0;
45
printf(
"Desea centrar: "
);
46
scanf(
"%d"
, &op);
47
if
(op)
48
{
49
printf(
"Por rango: "
);
50
scanf(
"%d"
, &op);
51
flag|=(op?1:4);
52
}
53
printf(
"Desea normalizar: "
);
54
scanf(
"%d"
, &op);
55
if
(op)
56
{
57
printf(
"Por rango: "
);
58
scanf(
"%d"
, &op);
59
flag|=(op?2:8);
60
}
61
cn = (flag&1)?vmn:(flag&4?md:0);
62
nr = (flag&2)?vmx-vmn:(flag&8?st:1);
63
printf(
"%d\t%f\t%f\n"
, flag, cn, nr);
64
for
(i=0; i<n; i++)
65
{
66
z[i] = (x[i]-cn)/nr;
67
printf(
"Z[%d] = %f\n"
, i+1, z[i]);
68
}
69
return
0;
70
}
N
#define N
Definition
012_aleatorio.c:5
max
#define max
Definition
012_aleatorio.c:6
min
#define min
Definition
012_aleatorio.c:7
main
int main(void)
Definition
Ejemplo_035.c:15
src
20252
Ejemplo023.c
Generated by
1.16.1