VIGASENT1
DownloadTélécharger
Actions
Vote :
ScreenshotAperçu

Informations
Catégorie :Category: nCreator TI-Nspire
Auteur Author: danterftpro
Type : Classeur 3.0.1
Page(s) : 1
Taille Size: 3.52 Ko KB
Mis en ligne Uploaded: 29/04/2025 - 20:18:20
Uploadeur Uploader: danterftpro (Profil)
Téléchargements Downloads: 1
Visibilité Visibility: Archive publique
Shortlink : http://ti-pla.net/a4610945
Type : Classeur 3.0.1
Page(s) : 1
Taille Size: 3.52 Ko KB
Mis en ligne Uploaded: 29/04/2025 - 20:18:20
Uploadeur Uploader: danterftpro (Profil)
Téléchargements Downloads: 1
Visibilité Visibility: Archive publique
Shortlink : http://ti-pla.net/a4610945
Description
Fichier Nspire généré sur TI-Planet.org.
Compatible OS 3.0 et ultérieurs.
<<
-- Programa para diseño de vigas T - ACI Perú -- Escribe las dimensiones de la viga T y los valores de los materiales -- Calcula la sección, momento y flexión de la viga. -- Datos de entrada local datos = { b = 0, -- Ancho del alma (cm) bf = 0, -- Ancho del ala (cm) h = 0, -- Altura total (cm) hf = 0, -- Espesor del ala (cm) fc = 0, -- Resistencia del concreto (kg/cm²) fy = 0 -- Resistencia del acero (kg/cm²) } local datos_extra = { Mu = 0 -- Momento último (tonf·m) } local etiquetas = { b = "b (Ancho del alma en cm):", bf = "bf (Ancho del ala en cm):", h = "h (Altura total en cm):", hf = "hf (Espesor del ala en cm):", fc = "f'c (Resistencia del concreto en kg/cm²):", fy = "fy (Resistencia del acero en kg/cm²):" } local calculo_realizado = false local resultado_texto = "" -- Función para dibujar el menú principal function menu(gc) gc:drawString("DISEÑO DE VIGAS T - ACI PERÚ", 10, 10) gc:drawString("1. Ingresar Datos", 10, 30) gc:drawString("2. Calcular Momentos y Sección", 10, 50) gc:drawString("3. Diseño a Flexión", 10, 70) gc:drawString("4. Ver Sección T", 10, 90) gc:drawString("5. Salir", 10, 110) end -- Función para ingresar datos function ingresar_datos(gc) for key, etiqueta in pairs(etiquetas) do gc:drawString(etiqueta, 10, 20) local input = "" -- Aquí ingresarías el valor -- La entrada del usuario se puede capturar y usar -- Este código es una simplificación para que ingreses los datos end end -- Función para calcular momento y sección function calcular(gc) local b = datos.b local bf = datos.bf local h = datos.h local hf = datos.hf local fc = datos.fc local fy = datos.fy local Mu = datos_extra.Mu * 100000 local beta1 = 0.85 if fc > 280 then beta1 = math.max(0.65, 0.85 - 0.05 * ((fc - 280) / 70)) end local a = 0.85 * fc * bf * hf / (fy * b) local c = a / beta1 local d = h - 5 local As = 0.85 * fc * bf * hf / fy local Mn = 0.85 * fc * bf * hf * (d - hf/2) / 100000 local phi = 0.9 local phiMn = phi * Mn local cumple = phiMn >= datos_extra.Mu resultado_texto = string.format( "SECCIÓN: %snfc = %.0f | fy = %.0fnbf = %.1f, b = %.1f, hf = %.1f, h = %.1fnnc = %.2f cm, a = %.2f cmnAs = %.2f cm²nMn = %.2f tonf·mnÕMn = %.2fnMu = %.2fnn%s", (a <= hf) and "RECTANGULAR" or "T", fc, fy, bf, b, hf, h, c, a, As, Mn, phiMn, datos_extra.Mu, cumple and "CUMPLE (ÕMn e Mu)" or "NO CUMPLE" ) calculo_realizado = true end -- Función para ver la sección T function ver_seccion(gc) local bf, b, h, hf = datos.bf, datos.b, datos.h, datos.hf local escala = 150 / h local x0, y0 = 160, 20 local ala_w = bf * escala local ala_h = hf * escala local alma_w = b * escala local alma_h = (h - hf) * escala gc:setPenColorRGB(0, 0, 0) gc:drawRect(x0 - ala_w/2, y0, ala_w, ala_h) gc:drawRect(x0 - alma_w/2, y0 + ala_h, alma_w, alma_h) gc:drawString(string.format("bf=%.0f cm", bf), x0 - ala_w/2, y0 - 15) gc:drawString(string.format("b=%.0f", b), x0 - alma_w/2, y0 + ala_h + alma_h + 5) end -- Función principal de la aplicación function on.paint(gc) gc:setFont("sansserif", "b", 12) menu(gc) -- Muestra el menú principal end function on.charIn(char) if char == "1" then ingresar_datos(gc) elseif char == "2" then calcular(gc) elseif char == "3" then -- Implementar cálculo de flexión elseif char == "4" then ver_seccion(gc) elseif char == "5" then -- Salir de la aplicación end end Made with nCreator - tiplanet.org
>>
Compatible OS 3.0 et ultérieurs.
<<
-- Programa para diseño de vigas T - ACI Perú -- Escribe las dimensiones de la viga T y los valores de los materiales -- Calcula la sección, momento y flexión de la viga. -- Datos de entrada local datos = { b = 0, -- Ancho del alma (cm) bf = 0, -- Ancho del ala (cm) h = 0, -- Altura total (cm) hf = 0, -- Espesor del ala (cm) fc = 0, -- Resistencia del concreto (kg/cm²) fy = 0 -- Resistencia del acero (kg/cm²) } local datos_extra = { Mu = 0 -- Momento último (tonf·m) } local etiquetas = { b = "b (Ancho del alma en cm):", bf = "bf (Ancho del ala en cm):", h = "h (Altura total en cm):", hf = "hf (Espesor del ala en cm):", fc = "f'c (Resistencia del concreto en kg/cm²):", fy = "fy (Resistencia del acero en kg/cm²):" } local calculo_realizado = false local resultado_texto = "" -- Función para dibujar el menú principal function menu(gc) gc:drawString("DISEÑO DE VIGAS T - ACI PERÚ", 10, 10) gc:drawString("1. Ingresar Datos", 10, 30) gc:drawString("2. Calcular Momentos y Sección", 10, 50) gc:drawString("3. Diseño a Flexión", 10, 70) gc:drawString("4. Ver Sección T", 10, 90) gc:drawString("5. Salir", 10, 110) end -- Función para ingresar datos function ingresar_datos(gc) for key, etiqueta in pairs(etiquetas) do gc:drawString(etiqueta, 10, 20) local input = "" -- Aquí ingresarías el valor -- La entrada del usuario se puede capturar y usar -- Este código es una simplificación para que ingreses los datos end end -- Función para calcular momento y sección function calcular(gc) local b = datos.b local bf = datos.bf local h = datos.h local hf = datos.hf local fc = datos.fc local fy = datos.fy local Mu = datos_extra.Mu * 100000 local beta1 = 0.85 if fc > 280 then beta1 = math.max(0.65, 0.85 - 0.05 * ((fc - 280) / 70)) end local a = 0.85 * fc * bf * hf / (fy * b) local c = a / beta1 local d = h - 5 local As = 0.85 * fc * bf * hf / fy local Mn = 0.85 * fc * bf * hf * (d - hf/2) / 100000 local phi = 0.9 local phiMn = phi * Mn local cumple = phiMn >= datos_extra.Mu resultado_texto = string.format( "SECCIÓN: %snfc = %.0f | fy = %.0fnbf = %.1f, b = %.1f, hf = %.1f, h = %.1fnnc = %.2f cm, a = %.2f cmnAs = %.2f cm²nMn = %.2f tonf·mnÕMn = %.2fnMu = %.2fnn%s", (a <= hf) and "RECTANGULAR" or "T", fc, fy, bf, b, hf, h, c, a, As, Mn, phiMn, datos_extra.Mu, cumple and "CUMPLE (ÕMn e Mu)" or "NO CUMPLE" ) calculo_realizado = true end -- Función para ver la sección T function ver_seccion(gc) local bf, b, h, hf = datos.bf, datos.b, datos.h, datos.hf local escala = 150 / h local x0, y0 = 160, 20 local ala_w = bf * escala local ala_h = hf * escala local alma_w = b * escala local alma_h = (h - hf) * escala gc:setPenColorRGB(0, 0, 0) gc:drawRect(x0 - ala_w/2, y0, ala_w, ala_h) gc:drawRect(x0 - alma_w/2, y0 + ala_h, alma_w, alma_h) gc:drawString(string.format("bf=%.0f cm", bf), x0 - ala_w/2, y0 - 15) gc:drawString(string.format("b=%.0f", b), x0 - alma_w/2, y0 + ala_h + alma_h + 5) end -- Función principal de la aplicación function on.paint(gc) gc:setFont("sansserif", "b", 12) menu(gc) -- Muestra el menú principal end function on.charIn(char) if char == "1" then ingresar_datos(gc) elseif char == "2" then calcular(gc) elseif char == "3" then -- Implementar cálculo de flexión elseif char == "4" then ver_seccion(gc) elseif char == "5" then -- Salir de la aplicación end end Made with nCreator - tiplanet.org
>>