Título: Ayuda con esta funcion Publicado por: gold oscar en 2 Noviembre 2016, 18:49 pm Hola gente, soy muy nuevo en programar y necesito que me ayuden para poder entender esta parte de la materia. Si bien hasta ahora entendí todo lo visto en la materia, esto de funciones me esta dando trabajo, mas específicamente en el pasaje por valor y parámetros. Mi duda es sobre un ejercicio, que no puedo interpretar y no se como hacer, y creo que si puedo entender como se hace este, puedo sacar los demás también.
El ejercicio en cuestión es este: Implementar una función que devuelva la cantidad de bits en 1 que tiene un char que se le pasa como parámetro por valor y por referencia. Invocarla desde el main y verificar imprimiendo varios casos(hexadecimal y al lado cant de unos). Alguien podría darme una mano! Es que si bien entiendo la "lógica" del pasaje de parámetros, no se como hacerlo en el programa. Saludos y disculpen mi ignorancia!! :-( Título: Re: Ayuda con esta funcion Publicado por: engel lex en 2 Noviembre 2016, 19:13 pm las funciones tienden a ser en general bastante simples
ejemplo de una función cualquiera... Código
en general son Código: tipoRetorno nombreFuncion(tipoParametro nombreParametro){ el tipo tanto de funcion como de parametros son int,char, etc... el return debe ser un valor del mismo tipo que la función así que si haces por ejemplo una funcion de división que acepte enteros pero retorne float Código
(los float entre parentesis es para obligar a que se comporten como y que retornen decimales) espero resuelva tu duda, si no, explica con más detalle cual fue Título: Re: Ayuda con esta funcion Publicado por: gold oscar en 2 Noviembre 2016, 20:24 pm Si eso lo entiendo, pero no entiendo como plantear ese ejercicio que puse ahi
Título: Re: Ayuda con esta funcion Publicado por: engel lex en 2 Noviembre 2016, 20:31 pm El char sabemos que tiene 8 bits, la forma más simple es cuando & y >> para ir leyendo bit a bit en un for
Título: Re: Ayuda con esta funcion Publicado por: gold oscar en 3 Noviembre 2016, 00:54 am Sigo sin entender como comenzarlo, :-(
Título: Re: Ayuda con esta funcion Publicado por: engel lex en 3 Noviembre 2016, 01:06 am Recomiendo e estudiar operadores de bits
Es algo básico de c que te puede ayudar mucho más adelante Aquí hay información básica http://www.zator.com/Cpp/E4_9_3.htm Título: Re: Ayuda con esta funcion Publicado por: gold oscar en 3 Noviembre 2016, 01:37 am Ya se todo lo de operadores de bits, lo que no se es como hacer el ejercicio que postee, si alguien aunque sea me ayuda a comenzarlo......
Título: Re: Ayuda con esta funcion Publicado por: engel lex en 3 Noviembre 2016, 02:10 am sabes convertir un char a binario? (obtener los bits)
que no sabes exactamente? Título: Re: Ayuda con esta funcion Publicado por: gold oscar en 3 Noviembre 2016, 07:05 am No entiendo como hacer el ejercicio en si. >:(
Título: Re: Ayuda con esta funcion Publicado por: gold oscar en 3 Noviembre 2016, 08:30 am Hola, disculpen que sea tan pesado, pero esto es lo que se me ocurrio hasta ahora
Código: int cant(char a[30]) se imprime: la cantidad de bits en 1 es=5 estara bien eso? :( Título: Re: Ayuda con esta funcion Publicado por: engel lex en 3 Noviembre 2016, 13:54 pm No se están imprimiendo los bits en 1... se están imprimiendo los char que contienen el número 1
Si por ejemplo le pasas 'A' debería retornar 1, ya que esa letra en ascii es 64 (01000000) , los char pueden ser tratados como números , por eso todo lo que te dije de las operaciones binarias Título: Re: Ayuda con esta funcion Publicado por: gold oscar en 3 Noviembre 2016, 20:41 pm entonces como debo hacerlo, porque la verdad es que se me ocurrio eso solo.
Título: Re: Ayuda con esta funcion Publicado por: engel lex en 3 Noviembre 2016, 20:50 pm El char sabemos que tiene 8 bits, la forma más simple es usando & y >> para ir leyendo bit a bit en un for Título: Re: Ayuda con esta funcion Publicado por: gold oscar en 3 Noviembre 2016, 20:56 pm pero no se como plantear eso en el programa
Título: Re: Ayuda con esta funcion Publicado por: engel lex en 3 Noviembre 2016, 21:04 pm un ejemplo de conversión a binario
Código
Título: Re: Ayuda con esta funcion Publicado por: gold oscar en 3 Noviembre 2016, 21:21 pm Pero ahi me pide que indique la cantidad de unos que hay
Título: Re: Ayuda con esta funcion Publicado por: engel lex en 3 Noviembre 2016, 21:30 pm ya te mostré como convertir a binario... piensa que hay que cambiar y has tu funcion
Ya se todo lo de operadores de bits, lo que no se es como hacer el ejercicio que postee, si alguien aunque sea me ayuda a comenzarlo...... me indicas que sabes todo de operadores de bit... es simple |