Vous êtes sur la page 1sur 7

ANALISIS DE VIGA T.

cpp: define el punto de entrada de la aplicacin de


consola.
//
#include "stdafx.h"
#include "stdio.h"
#include "math.h"
int _tmain(int argc, _TCHAR* argv[])
{
//Variables para el Analisis.
float tab [4][10];
int elec,opc, n[10], o, i, j, barra, barraest, c, f,nb,ek;
//variable "ek" estaba declarada como variable real.
float k,y,num=0,adi=0, sb, emay,bmin,yg, espocup[10],Asu[10],
As[10],Ass, Asf,As1,As2,a1, db[10], ds, rc, a, b, bw, d, h, hf, p, pmax,
pmin, pmin1, pmin2,fc, fy, pb, pv, pf, B1, Mu, Mu1, Mu2;
printf("\n\t\t\t DISEO Y ANALISIS DE VIGA T");
printf("\n\n Tabla de caracteristicas del acero");
printf("\n\n ");
printf("\nBARRA |DIAMETRO|
printf("\n
3 | 0.95cm |
printf("\n
4 | 1.27cm |
printf("\n
5 | 1.59cm |
printf("\n
6 | 1.91cm |
printf("\n
7 | 2.22cm |
printf("\n
8 | 2.54cm |
printf("\n
9 | 2.86cm |
printf("\n
10| 3.18cm |
printf("\n
11| 3.49cm |
printf("\n
12| 3.81cm |
tab[1][1]=3;
tab[2][1]=4;
tab[3][1]=5;
tab[4][1]=6;
tab[5][1]=7;
tab[6][1]=8;
tab[7][1]=9;
tab[8][1]=10;
tab[9][1]=11;
tab[10][1]=12;

AREA (cm2)
0.71
1.27
1.98
2.85
3.88
5.07
6.41
7.92
9.58
11.4

|");
|");
|");
|");
|");
|");
|");
|");
|");
|");
|");

tab[1][2]=0.95; tab[1][3]=0.71;
tab[2][2]=1.27; tab[2][3]=1.27;
tab[3][2]=1.59; tab[3][3]=1.98;
tab[4][2]=1.91; tab[4][3]=2.85;
tab[5][2]=2.22; tab[5][3]=3.88;
tab[6][2]=2.54; tab[6][3]=5.07;
tab[7][2]=2.86; tab[7][3]=6.41;
tab[8][2]=3.18; tab[8][3]=7.92;
tab[9][2]=3.49; tab[9][3]=9.58;
tab[10][2]=3.81; tab[10][3]=11.4;

do
{
printf("\n\n\t\t\t\t ANALISIS DE VIGAS T");
printf("\n\n\t\t\t\t ===================");

do
{

1(si)/2(no):");

printf("\n\n Valor de 'numero de capas de acero': ");


scanf("%d",&c);
do
{
printf("\ Desea corregir el dato? oprima
scanf("%d",&elec);
}while(elec>2 || elec<1);

}while(elec==1);

do
{

1(si)/2(no):");

printf("\n -Valor de 'bw'(cm): ");


scanf("%f",&bw);
do
{
printf("\ Desea corregir el dato? oprima

scanf("%d",&elec);
}while(elec>2 || elec<1);
}while(elec==1);
do
{

printf("\n -Valor de 'recubrimiento'(cm): ");


scanf("%f",&rc);
do
{
printf("\ Desea corregir el dato? oprima

1(si)/2(no):");

scanf("%d",&elec);
}while(elec>2 || elec<1);
}while(elec==1);

do
{
Ass=0;
y=0;
for(i=0;i<c;i++)
{
printf("\n\n CAPA %d",i+1);
printf("\n *Cantidad de barras de acero para la capa %d:
",i+1);

scanf("%d",&n[i]);

printf("\n -Elija un numero de barra de la tabla para el acero: ");

scanf("%d",&barra);
f=barra-2;
db[i]=tab[f][2];//diametro de cada acero
Asu[i]=tab[f][3];//acero por unidad
printf("\n .Diametro del acero es %0.2f cm y su area es %0.2f
cm2",db[i],Asu[i]);
if(db[i]<=2.54)
{
sb=2.54;
}
else
{
sb=db[i];
}
espocup[i]=(n[i]*db[i])+((n[i]-1)*sb);
As[i]=Asu[i]*n[i];//acero por capa
Ass=As[i]+Ass;//acumulacion total de area de acero
y=adi+db[i]/2;
num=num+(As[i]*y);
adi=adi+db[i]+2.54;
}
emay=espocup[0];
for(i=0;i<c-1;i++)
{
if(emay<=espocup[i+1])
{
emay=espocup[i+1];
}
}

");

printf("\n\n Area total de acero a utilizar es As: %0.2f", Ass);


printf("\n\n Elija un numero de barra de la tabla para el estribo:
scanf("%d",&barraest);
j=barraest-2;
ds=tab[j][2];
printf("\n\n Diametro del acero es %0.2f cm ",ds);

bmin=2*(rc+ds)+emay;
printf("\n El bmin es: %f",bmin);
if(bmin>bw)
{
printf("\n\a ##b minimo es mayor al bw ingresado; ingresar
nuevos diametros de acero");

printf("\n ..............................................................
..............................");
}
}while(bmin>bw);

printf("\n\n\t Ingrese los siguientes valores:");


do
{
printf("\n\n -Valor de 'b' (cm): ");
scanf("%f",&b);
do
{
printf("\ Desea corregir el dato? oprima
1(si)/2(no):");
scanf("%d",&elec);
}while(elec>2 || elec<1);
}while(elec==1);

do
{
printf("\n -Valor de 'h'(cm): ");
scanf("%f",&h);
do
{
printf("\ Desea corregir el dato? oprima
1(si)/2(no):");
scanf("%d",&elec);
}while(elec>2 || elec<1);
}while(elec==1);
do
{
printf("\n -Valor de 'hf'(cm): ");
scanf("%f",&hf);
do
{
printf("\ Desea corregir el dato? oprima
1(si)/2(no):");
scanf("%d",&elec);
}while(elec>2 || elec<1);
}while(elec==1);
do
{
printf("\n -Valor de f'c(kg/cm2): ");
scanf("%f",&fc);
do
{
printf("\ Desea corregir el dato? oprima
1(si)/2(no):");
scanf("%d",&elec);
}while(elec>2 || elec<1);

}while(elec==1);
do
{
printf("\n -Valor de fy (kg/cm2): ");
scanf("%f",&fy);
do
{
printf("\ Desea corregir el dato? oprima
1(si)/2(no):");
scanf("%d",&elec);
}while(elec>2 || elec<1);
}while(elec==1);
do
{
printf("\n -Tipo de zona(elija una de las opciones");
printf("\n\n 1=Alto riesgo sismico \t\t 2=Bajo riesgo
sismico \n\n la opcion que usted elige es:");
scanf("%d",&ek);
do
{
printf("\ Desea corregir el dato? oprima
1(si)/2(no):");
scanf("%d",&elec);
}while(elec>2 || elec<1);
if(ek==1)
{
k=0.5;
}
if(ek==2)
{
k=0.75;
}
printf("\n\n el valor elegido de k es: %0.2f",k);
}while(elec==1);
yg=num/Ass;
printf("\n\n el centro de las capas de acero es %0.2f cm",yg);
d=h-(rc+ds+yg);
printf("\n\n El valor de 'd' es: %0.2f cm",d);
p=Ass/(b*d); //cuantia
printf("\n\n **El valor de la cuantia es 'p': %0.5f",p);
pmin1=sqrt(fc)*(0.8/fy);
printf("\n\n ..El valor de la cuantia min1 es : %0.5f",pmin1);
pmin2=14/fy;
printf("\n ..El valor de la cuantia min2 es : %0.5f",pmin2);

if(pmin1>pmin2)
{
pmin=pmin1;
}
else
{
pmin=pmin2;
}
printf("\n\n La *Cuantia minima es: %0.5f", pmin);
B1=0.85-(0.05*(fc-280)/70);
if(B1>0.85)
{
B1=0.85;
}
if(B1<0.65)
{
B1=0.65;
}
printf("\n\n\tEl valor de B1 es: %f",B1);
pv=B1*0.85*(fc/fy)*(6000/(6000+fy));
printf("\n\n El valor de r' es :%0.5f",pv);
Asf=0.85*fc*(b-bw)*hf/fy;
printf("\n\n El valor de Asf es :%0.2f cm2",Asf);
pf=Asf/(bw*d);
printf("\n\n El valor de rf es :%0.5f",pf);
pmax=k*(bw/b)*(pv+pf);
printf("\n\n El valor de Cuanta maxima es : %f",pmax);
if(pmin<p)
{
if(p<pmax)
{
printf("\n\n Conforme a las normas del ACI");
}
else
{
printf("\n\n No Conforme a las normas del ACI");
}
}
else
{

printf("\n\n No Conforme a las normas del ACI");

}
a=Ass*fy/(0.85*fc*b);

printf("\n\n El valor de 'a' es: %0.2f",a);


if(a<hf)
{
printf("\n\n /*\Usar seccion rectangular 'a' = %0.2f cm < hf
= %0.2f cm", a,hf);
Mu=0.9*Ass*(fy/1000)*((d-(a/2))/100);
printf("\n\n El Momento Ultimo es: %0.2f T-m", Mu);
}
if(a>hf)
{
printf("\n\n /*\Usar seccion T 'a' = %0.2f cm > hf = %0.2f
cm", a,hf);
As1=Ass-Asf;
printf("\n\n El valor de As1 es :%0.2f cm2",As1);
a1=As1*fy/(0.85*fc*bw);
printf("\n\n El valor del nnuevo 'a' es:%0.2f cm",a1);
Mu1=0.9*As1*(fy/1000)*((d-a1/2)/100);
Mu2=0.9*Asf*(fy/1000)*((d-hf/2)/100);
Mu=Mu1+Mu2;
printf("\n\n El Momento Ultimo es: %0.2f T-m", Mu);
}
printf(" \n\n :: DESEA CONTINUAR? 1(SI)/2(NO)::");
scanf("%d",&elec);
}while(elec==1);
return 0;
}

Vous aimerez peut-être aussi