Ayuda con este problema de programación

N supermercado de la construcción decide liquidar sus stocks de la temporada anterior mediante una promoción en la que venderá los pavimentos a precios asequibles, con independencia de la marca y modelo. El precio quedará fijado a partir del tipo de material y la superficie según la siguiente tabla de precios:
¿Técnica Medidas en m2 Precio por m2
cerámica Primeros 10 21?
¿Siguientes 17?
¿Gres Primeros 5 28?
de 5 a 10 23 ?
¿Siguientes 20?
¿Mármol Primeros 4 30?
¿Siguientes 25?
Completa la siguiente función en Action Script para que recibiendo el tipo de material y largo y ancho de la sala a embaldosar, devuelva el precio total. Debe tenerse en cuenta, para calcular la superficie a comprar que se prevé un 10% en menguas y que mientras el gres se vende en cajas de 1 m2, tanto la cerámica como el mármol se vende en cajas indivisibles de 2 m2.
Ejemplo: para embaldosar con mármol una habitación de 4,75 x 3,20 m los cálculos serían:
1. La superficie a embaldosar será 4,75x3, 20= 15,2 m2
2. ¿Las menguas serán de un 10%? 1,52 m2
3. El total necesario 16,72 m2
4. ¿Cómo va en cajas de 2m2 se necesitan 9 cajas? 18 m2
5. Los primeros 4m2 a 30?/m2 = 120 ?
Los restantes 14m2 a 25?/m2 = 350 ?
6. La función debe devolver 470
function valor (material, ancho, largo): Number
{
var precio:Number;
var ....
//ESCRIBE AQUÍ FALTA EL CÓDIGO
return (precio);
}
Respuesta
-1
NO entiendo el planteo del problema.

2 respuestas más de otros expertos

Respuesta
1
¿Cuál es el problema en programación?
Primero tendrás que resolver el problema matemático y luego me dices cual es el problema en programación.
Es que no lo entiendo... no se como empezar ya que no veo como hacerlo a nivel matématico, lo que si que tengo es el código en visual basic aunque no lo he hecho yo y tampoco tengo conocimientos de vb.
vNOTA: Me.TextBox1.Text, Me.TextBox2.Text, Me.TextBox3.Text son cajas de texto donde se ingresan (material, ancho, alto)
Public Class Material
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.TextBox4.Text = ejecutar(Me.TextBox1.Text, Me.TextBox2.Text, Me.TextBox3.Text)
End Sub
'esta es la función
Public Function ejecutar(ByVal material As String, ByVal ancho As Double, ByVal largo As Double) As Double
Dim superficie As Double = ancho * largo
'sacar el 10 %
Dim menguas As Double = superficie * 0.1
Dim totalNecesario As Double = superficie + menguas
Dim primeros As Double = 0.0
Dim restantes As Double = 0.0
Dim total As Double = 0.0
Select Case material
Case "ceramica"
Case "gres"
Case "marmol"
Dim cajasNecesariasDeMarmol As Integer = Math.Ceiling(totalNecesario / 2)
primeros = 4 * 30
If cajasNecesariasDeMarmol > 4 Then
restantes = (cajasNecesariasDeMarmol * 2 - 4) * 25
End If
End Select
total = primeros + restantes
Return total
End Function
Saludos y gracias igualmente
Tu problema es que no sabes traducir el código de visual basic a action script.
Con action script no te puedo ayudar, pero si te puedo decir lo que hace en visual basic.
Public Class Material
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
//Al pulsar sobre el botón llama a la función ejecutar
//que devuelve el resultado
Me.TextBox4.Text = ejecutar(Me.TextBox1.Text, Me.TextBox2.Text, Me.TextBox3.Text)
End Sub
'esta es la función
Public Function ejecutar(ByVal material As String, ByVal ancho As Double, ByVal largo As Double) As Double
//Declaración de variables
Dim superficie As Double = ancho * largo
'sacar el 10 %
Dim menguas As Double = superficie * 0.1
Dim totalNecesario As Double = superficie + menguas
Dim primeros As Double = 0.0
Dim restantes As Double = 0.0
Dim total As Double = 0.0
//Segun el material realizará un proceso distinto
//En este caso para los tres tipos de material está
//calculando solo para el mármol
Select Case material
Case "ceramica"
Case "gres"
Case "marmol"
//Calcula las cajas necesarias de marmol.
//Math.Ceiling -> Redondea al alta el resultado
//de totalnecesario/2
Dim cajasNecesariasDeMarmol As Integer = Math.Ceiling(totalNecesario / 2)
//Para el marmol eran los primeros 4*30 y lo guarda en la variable primeros
primeros = 4 * 30
//Si las cajasnesarias son > 4 calcula las restantes
If cajasNecesariasDeMarmol > 4 Then
restantes = (cajasNecesariasDeMarmol * 2 - 4) * 25
End If
End Select
//Calcula el total y lo devuelve
total = primeros + restantes
Return total
End Function
En tu función de action script tendrás que hacer lo mismo. Declárate las variables y haz los mismos cálculos, pero para todos los casos, porque aquí solo han puesto el del mármol.
Respuesta
Puedo ayudarte si me dices en que parte tienes duda pero no resuelvo proyectos de otras personas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas