Autor |
Mensaje |
sfunahuel
Nivel 8
Edad: 34
Registrado: 30 Ago 2008
Mensajes: 652
Ubicación: Temperley
Carrera: Química
|
|
Como va?
estoy cursando computacion y no entiendo nada, jajaj. Tmp para tanto, pero igual, la cuestión es que tenemos que hacer estos items, y no me salen:
"Sea un número entero positivo Z, expresado como:
Z = S x D
Donde:
S = 1 + 2(1) + 2(2) + 2(3) + 2(4) +…+2(n) y D = 2(n) [elevados]
Si S es un número primo, entonces Z es un Número Perfecto."
Comprbar que S es primo me sale, pero no se como asignar los D a cada S y los Z, encima pide los Z en los que n varía del 1 al 10...
El otro:
"Dado un telegrama que termina en punto y que está almacenado en el segundo
renglón de un archivo de texto, se desea desarrollar un programa en Lenguaje
Pascal que lo lea carácter por carácter y determine la cantidad de palabras que
contiene.
El resultado se deberá agregar al archivo de texto, dejando previamente un renglón
en blanco."
Contar espacios en banco no es problema, pero me pide q tenga en cuenta q espacios en blanco antes de la qer palabra no cuentan, y q cuente comas, puntos, etc. Ahi ya no puedo.
por favor, necesito ayuda, ya mi cerebro se secó =S
nahuel
|
|
|
|
|
|
|
|
|
Malena Miguel
Nivel 8
Edad: 35
Registrado: 13 Jul 2008
Mensajes: 690
Ubicación: sulla frontiera
Carrera: Civil
|
|
Jaaa...!! Estás con Grossi!!
Todo mal, yo también
Bueno, a ver.
El de los perfectos. Los números que vos evaluas para ver si son primos son los formados por 1 + 2(1) + 2(2) + 2(3) + 2(4) +…+2(n), y n va aumentando con las iteraciones. No hay mucho más que hacer: el D es 2^n, a la n actual que estés tomando para formar S que resultó ser primo.
Ahora, supongo que esa n la tendrás como índice en la estructura de repetición (n que va de 1 a 10 y cuando llega a ese número sale), entonces, cuando encontrás un número primo lo multiplicas por D=2^n y ahí tenés a Z (el número perfecto uqe buscás)
Telegrama. Si podés contar espacios es porque estás usando un IF o CASE y comparando el char que leiste con ' ' (espacio en blanco), hacé lo mismo con los '.' y ','. CASE y ya, y contá con cada aparición una palabra nueva.
Y en cuanto a los espacios antes de la primer palabra... ehhh, se me ocurren varias cosas, una más chapucera que la otra ... de última meté una booleana por ahí...
Ni idea si fui clara, el de los perfectos lo hice yo, el del telegrama le tocó a mi compañero... Cualquier cosa avisá.
|
|
|
|
|
|
|
|
|
sfunahuel
Nivel 8
Edad: 34
Registrado: 30 Ago 2008
Mensajes: 652
Ubicación: Temperley
Carrera: Química
|
|
Todo ayuda, todo ayuda =D, ahora me voy a la facultad y caundo venga hecho mierda veo q me sale, jajaj.
Muchas gracias por la ayuda
nahuel
|
|
|
|
|
|
|
|
|
Daniel 77
Nivel 7
Edad: 35
Registrado: 03 Ago 2008
Mensajes: 365
Ubicación: Colegiales
Carrera: Química
|
|
Yo también estoy con Grossi......la mina se zarpo un poco, por no decir muchisimo.....Yo tengo que hacer el ejercicio 4, y la verdad que no se bien como encararlo. Cualquier ayuda y/o sugerencia me vendria bien.
Dice asi:
En un archivo de texto se encuentra el registro diario a lo largo de un mes, de las
lluvias registradas en una localidad.
La información que se encuentra en el archivo de texto es:
Número de mes año Ej. 3 2007
Renglón en blanco
Día cantidad de lluvia caída 1 50
… …
Día cantidad de lluvia caída 31 0
La información está ordenada por día.
Se desea desarrollar un programa en Lenguaje Pascal que, en el caso en que se
haya registrado lluvia algún día, muestre por pantalla:
o Día más lluvioso.
o Informe si llovió dos días seguidos.
o Y, en el caso en que no haya llovido en todo el mes emitir un mensaje por
pantalla.
Observación:
El programa debe poder aplicarse a cualquier mes (tener en cuenta que el
año puede ser bisiesto).
Un año es bisiesto si es divisible por 400 o, si es divisible por 4
pero no por 100.
Ejemplo: 1999 no es bisiesto porque no es divisible por 4.
1800 no es bisiesto porque es divisible por 4 y por 100.
2008 es bisiesto porque es divisible por 400.
Si el mes es febrero, evaluar si es o no bisiesto a través de una condición
lógica compuesta.
Gracias
Saludos
|
|
|
|
|
|
|
|
|
Alet88
Nivel 3
Edad: 35
Registrado: 15 Jul 2008
Mensajes: 27
|
|
Yo también estoy con Grossi......la mina se zarpo un poco, por no decir muchisimo.....Yo tengo que hacer el ejercicio 4, y la verdad que no se bien como encararlo. Cualquier ayuda y/o sugerencia me vendria bien.
Dice asi:
En un archivo de texto se encuentra el registro diario a lo largo de un mes, de las
lluvias registradas en una localidad.
La información que se encuentra en el archivo de texto es:
Número de mes año Ej. 3 2007
Renglón en blanco
Día cantidad de lluvia caída 1 50
… …
Día cantidad de lluvia caída 31 0
La información está ordenada por día.
Se desea desarrollar un programa en Lenguaje Pascal que, en el caso en que se
haya registrado lluvia algún día, muestre por pantalla:
o Día más lluvioso.
o Informe si llovió dos días seguidos.
o Y, en el caso en que no haya llovido en todo el mes emitir un mensaje por
pantalla.
Observación:
El programa debe poder aplicarse a cualquier mes (tener en cuenta que el
año puede ser bisiesto).
Un año es bisiesto si es divisible por 400 o, si es divisible por 4
pero no por 100.
Ejemplo: 1999 no es bisiesto porque no es divisible por 4.
1800 no es bisiesto porque es divisible por 4 y por 100.
2008 es bisiesto porque es divisible por 400.
Si el mes es febrero, evaluar si es o no bisiesto a través de una condición
lógica compuesta.
Gracias
Saludos
Bueno, aver.. no sé pascal, pero voy a ayudarte con los conceptos, explicándote como pueda...
si sabés pascal, algo de VB debés entender q es el lenguaje más idiota del mundo :$ ! !1
ahi te dejo el codigo en VB 6
' :::Como se encabezan siempre estas porquerías:::
'
' :::Gelou!! , hoy vamos a tener una miniclase de "Aprender a pensar programas (?) " jaj:::
' :::Espero q les sirva...:::
'
' -_- (!) -_-
'
'
' BANNED
Private Sub Command1_Click()
Dim DiasMes As Byte
Dim DiasSeguidosLluvia(30) As Byte
Dim Llovio As Boolean
Dim Dia As Byte
Dim Lluvia As Integer
Dim LluviaMax As Integer
Dim DiaLluviaMax As Byte
Dim Linea As String
Dim Mes As Byte
Dim Indice As Byte
Dim Posi As Byte
Dim Anio As Integer
Dim Contador As Byte
Open App.Path & "\LluviaMes.txt" For Input As #1
List1.Clear
Mes = 0
Bisiesto = False
Line Input #1, Linea
Do
Posi = Posi + 1
If (Mid(Linea, Posi, 1) = " ") Then
Mes = Val(Left(Linea, Posi))
Anio = Val(Right(Linea, Len(Trim(Linea)) - Posi))
End If
Loop While Not Mes <> 0
''Su profe va a querer que utilicen lo siguiente, q me parece q está bastante de más, ya q para este ejercicio, no sirven esas estructuras...
If ((Mes = 1) Or (Mes = 3) Or (Mes = 5 ) Or (Mes = 7 ) Or (Mes = 8 ) Or (Mes = 10 ) Or (Mes = 12 )) Then ' Meses con 31 dias
DiasMes = 31
Else
If Mes = 2 Then ' Si el mes es febrero preguntamos si es bisiesto el año, sino no nos interesa
'Ya tenemos el mes y el año, entonces ahora utilizamos la condicion lógica compuesta...
If (((Anio Mod 4 = 0) And (Anio Mod 100 <> 0)) Or (Anio Mod 400 = 0)) Then
DiasMes = 29 'Anio Bisiesto
Else ' Meses con 30 dias
DiasMes = 28
End If
Else
DiasMes = 30
End If
End If
'While Not EOF(1) 'Posiblemente su profesora quiera que en vez de usar esto, utilicen For.. por eso la utilizacion del bisiesto... eso se haría de la siguente manera "For Contador = 1 to DiasMes, para decirle la cantidad de veces que tiene q leer el archivo.. saraza para la profe jaja, para el caso de ella, tienen q usar todo lo q está comentado arriba, menos lo q tiene doble comilla, porq eso es comentario :$, y tienen q poner lo del For next, y sacar el while Wend
For Contador = 1 To DiasMes
Line Input #1, Linea
Posi = 0 'reiniciamos contador
Do
Posi = Posi + 1 'Incrementamos Contador de Posicion
If (Mid(Linea, Posi, 1) = " ") Then 'Recorremos el texto q trajimos del Archivo
Dia = Val(Left(Linea, Posi)) 'Dia es el valor del texto a la izquierda del espacio
Lluvia = Val(Right(Linea, Len(Trim(Linea)) - Posi)) 'Dia es el valor del texto a la Derecha del espacio
End If
Loop While Not Dia <> 0
If (Lluvia <> 0) Then 'Ayer había llovido?
If Llovio = True Then 'Hoy LLovió?
If ((Indice <> 0) And (Dia <> DiasSeguidosLluvia(Indice) + 1)) Then
Indice = Indice + 2
Else
Indice = Indice + 1
End If
DiasSeguidosLluvia(Indice - 1) = Dia - 1
DiasSeguidosLluvia(Indice) = Dia
LlovioDosDiasSeguidos = True
Else
Llovio = True
End If
Else
Llovio = False
End If
If LluviaMax < Lluvia Then ' La lluvia del dia actual supera a la maxima hasta el momento?
LluviaMax = Lluvia
DiaLluviaMax = Dia
End If
Lluvia = 0
Dia = 0
'Wend
Next Contador
Close #1
If LluviaMax = 0 Then
List1.AddItem "NO LLOVIO NUNCA!!!"
Else
List1.AddItem "lluviamax " & Str(LluviaMax)
List1.AddItem "DiaLluviamax " & Str(DiaLluviaMax)
List1.AddItem "Llovio dias seguidos? " & LlovioDosDiasSeguidos
For Contador = 0 To Indice
List1.AddItem "Dias Seguidos (" & Contador + 1 & " ) " & DiasSeguidosLluvia(Contador)
Next Contador
End If
Form1.Height = 5130
lbMes.Caption = "Mes: " & Mes
lbAnio.Caption = "Anio: " & Anio
End Sub
' BANNED
' Slds.!
espero q les sirva... Acá tmb te dejo la ruta para q te bajes los archivos, y lo puedas ejecutar y veas como funciona,.. te dejo el vbp, el frm y el .exe x si no tenes vb instalado... tmb te dejo el txt con el un mes... no se cuál es
http://rapidshare.de/files/40486962/lluvia.rar.html
Tiene 400 bugs, o sea, no pongas Febrero con 28 dias si es de un año bisiesto o 30 dias en un mes de 31 porq te va a patear , no tenia tiempo para ponerme a validar todo, el punto era q funcionara, las validaciones te tocarán hacerlas a vos!!
PD: descomprimí todo en una misma carpeta y ejecutalo!.
Para modificar el mes, entrá al .txt y cambialo a mano, pero acordate q es renglon a renglon!! , no dejes renglones en blanco!!
Creo q me olvidé algo en lo que subí... en la linea de
If ((Mes = 1) Or (Mes = 3) Or ( 5 ) Or (7 ) Or ( 8 ) Or ( 10 ) Or (12 )) Then ' Meses con 31 dias
cambiarla x
If ((Mes = 1) Or (Mes = 3) Or (Mes = 5 ) Or (Mes = 7 ) Or (Mes = 8 ) Or (Mes = 10 ) Or (Mes = 12 )) Then ' Meses con 31 dias
porq no me acuerdo si andaba de esa forma
Slds!!
Dsp si tengo algo de tiempo me fijo de pasartelo a pascal , pero para eso voy a tener q aprender un poquito, porq no se nada!!
Adiós!
Cualquier duda :
msn : alet88@hotmail.com (finde)
mail q chequeo a cada rato :
alet88@gmail.com ,
agtournier@hipotecario.com.ar
|
|
|
|
|
|
|
|
|
Daniel 77
Nivel 7
Edad: 35
Registrado: 03 Ago 2008
Mensajes: 365
Ubicación: Colegiales
Carrera: Química
|
|
Muchas gracias por la ayuda!
A ver que pasa mañana ahora....
Saludos!
|
|
|
|
|
|
|
|
|
|
|
Ver tema siguiente
Ver tema anterior
Podés publicar nuevos temas en este foro No podés responder a temas en este foro No podés editar tus mensajes en este foro No podés borrar tus mensajes en este foro No podés votar en encuestas en este foro No Podéspostear archivos en este foro No Podés bajar archivos de este foro
|
Todas las horas son ART, ARST (GMT - 3, GMT - 2 Horas)
Protected by CBACK CrackerTracker365 Attacks blocked.
|