|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - LenguajeC
1
« en: Viernes 24 de Junio de 2011, 20:45 »
Hola a todos. Alguien me podría poner un programita con clases abstractas, x más que leo el manual con el que estoy estudiando no logro entender del todo la utilidad y no encuentro en la web otro ejemplo que no sea con figuras y no me cae la ficha.- Saludos.- Daniel
2
« en: Jueves 9 de Junio de 2011, 22:00 »
Hola gabio2. Perfecto, es lo que necesitaba.
Muchas gracias.- Saludos Daniel
3
« en: Jueves 9 de Junio de 2011, 19:39 »
Hola gabio2. Voy a tratar de ser práctico.- Esto es lo que obtengo en una determinada búsqueda: 05000000003662,0000366,Aceite COSTA DEL SOL Girasol Bidon pvc ,04x5Lt , 17.710, 0.000 (Archivo .TXT - la lista de precios que me envia el proveedor).- 0000366,Aceite COSTA DEL SOL Girasol Bidon pvc Esta parte que son el código del proveedor y la descripción del producto, necesito ponerlo en el portapapeles con algún método para luego volcarlo(Ctrl+v) en el archivo donde se va conformando el pedido.-(Todo en consola no en modo visual).-
Espero se entienda. Saludos. Daniel
4
« en: Lunes 6 de Junio de 2011, 14:02 »
Hola ProfesorX Muy bien, esta todo muy bien, en cuanto al examinador de objetos de Visual C# ni idea ya que uso como IDE el SnippetCompiler, me lo sugirieron para empezar con programas pequeños.- Ahora tengo otra duda, el texto encontrado lo necesito poner en el portapapeles y no puedo encontrar el método correspondiente, hay buena información al respecto en la Web pero no para programas de consola.- En el futuro te voy a enviar un privado, debes ser muy buena persona pero muy buena para reaccionar como lo hiciste después de mi post, son con los que deseo relacionarme.- Como siempre muchas gracias x tu ayuda.- Un abrazo. Daniel
5
« en: Domingo 5 de Junio de 2011, 18:43 »
Hola ProfesorX Muchas gracias ese método me solucionó todo.- Recomiendo que siempre revises todos los metodos/propiedades de una clase, para ver si alguno tiene cosas que te puedan servir. En este caso estaba el metodo Split() de la clase string, Amigo, tengo 59 años y no soy tu alumno.-(Esto lo encontré en otro foro:"usa string.split y lo resolverás?" era tan simple como eso).- Saludos. Daniel
6
« en: Sábado 4 de Junio de 2011, 23:06 »
Hola a todos. Créanme que agoté todas la pruebas pero no logro separar la cadena encontrado en 5 partes tomando como referencia la coma, el caso es que recibo una lista de precios en un archivo .TXT y necesito mostrar el resultado de una determinada búsqueda, el código es mucho más extenso pero lo simplifique para que se entienda mejor(la búsqueda me funciona correctamente).- using System; using System.Collections.Generic; public class MyClass { public static void Main() { string encontrado = "07793065000056,0000468,Aceite COSTA del SOL Girasol pvc x1.5Lt.,12x1.5 , 4.899, 0.000"; string mostrar = ""; int a = 0; for (byte b = 0; b < 5; b++) { if (b == 1) { a = 15;} if (b == 2) { a = 24;} if (b == 3) { a = 64;} if (b == 4) { a = 75;} mostrar = encontrado.Substring(a,encontrado.IndexOf(',')); Console.WriteLine("" + mostrar); } Console.ReadKey(); } }
Parte de la lista de precios en archivo .TXT 05000000000036,0000003,Vacios de Cerveza ,x1u , 799.000, 0.000 05000000000159,0000015,Jabón TOCADOR Varios ,X1 , 0.560, 0.000 05000000000562,0000056,Jabon Polvo Suelto Miniespuma x 8kg ,01x8kg , 12.690, 0.000 05000000000579,0000057,PROMO COCA COLA ZERO X 1LT ,x1 , 12.690, 0.000 05000000000616,0000061,Jabón en Polvo SUELTOS ,01x01u , 2.500, 0.000 05000000000647,0000064,Pañales SUELTOS ,01x10u , 2.000, 0.000 05000000000777,0000077,Jugos Sobres Sueltos ,x01u , 0.510, 0.000 05000000000807,0000080,Rollo Cocina Sueltos ,24x01u , 0.495, 0.000 05000000000845,0000084,Espirales Sueltos (OCASION) ,01x04u , 0.590, 0.000 05000100001032,0000103,Azúcar ,10x1Kg , 4.390, 0.000 07791716000028,0000103,Azúcar ,10x1Kg , 4.390, 0.000 07792241000026,0000103,Azúcar ,10x1Kg , 4.390, 0.000 07792241000040,0000103,Azúcar ,10x1Kg , 4.390, 0.000 07796537261245,0000103,Azúcar ,10x1Kg , 4.390, 0.000 07797690000016,0000103,Azúcar ,10x1Kg , 4.390, 0.000 07798019380017,0000103,Azúcar ,10x1Kg , 4.390, 0.000 07798049780023,0000103,Azúcar ,10x1Kg , 4.390, 0.000 07798049780047,0000103,Azúcar ,10x1Kg , 4.390, 0.000 17791426000018,0000103,Azúcar ,10x1Kg , 4.390, 0.000 07790220001705,0000106,Azúcar DUL-C ,10x01Kg , 3.090, 0.000 07791100000283,0000107,Azúcar CHANGO PREMIUM x 1Kg ,10x1Kg , 4.399, 0.000 07791100004441,0000107,Azúcar CHANGO PREMIUM x 1Kg ,10x1Kg , 4.399, 0.000 05000000001095,0000109,Azúcar FRONTERITA Paquete x1Kg ,10x01Kg , 4.899, 0.000 07790220000531,0000109,Azúcar FRONTERITA Paquete x1Kg ,10x01Kg , 4.899, 0.000 07791100000481,0000110,Azúcar CHANGO paquete x1Kg ,10x01Kg , 4.399, 0.000 07791100004465,0000110,Azúcar CHANGO paquete x1Kg ,10x01Kg , 4.399, 0.000 17791100000389,0000110,Azúcar CHANGO paquete x1Kg ,10x01Kg , 4.399, 0.000 05000000001248,0000124,Sidra de Ocasion Real-ET.NEGRA ,x1 , 1.910, 0.000 05000000002061,0000206,Edulcorante HILERET "1A10" x50u. ,12x50u , 3.125, 0.000 07794940000109,0000206,Edulcorante HILERET "1A10" x50u. ,12x50u , 3.125, 0.000 05000000002139,0000213,Azúcar HILERET Light ,06x500gr , 5.769, 0.000 07794940000536,0000213,Azúcar HILERET Light ,06x500gr , 5.769, 0.000 07794940000567,0000219,Edulcorante HILERET 1A10 Sobres 500u ,01x500u , 14.769, 0.000 05000000002726,0000272,Dentifrico Suelto x 90g ,01x90g , 1.900, 0.000 05000000002733,0000273,Dentifrico Suelto x 140g ,01x140g , 2.850, 0.000 05000000002740,0000274,Dentifrico Suelto x 180g ,01x180g , 3.500, 0.000 05000000002757,0000275,Papel Higienico Suelto x48u ,48x1 , 0.300, 0.000 05000000002856,0000285,Jugos TANG Suelto x 500u ,01x500u , 0.570, 0.000 05000000002863,0000286,Jugo CLIGHT Suelto x 500u ,01x500u , 0.630, 0.000 05000000002900,0000290,Jugos TANG Suelto x 50u ,01x50u , 0.600, 0.000 05000000002917,0000291,Jugos CLIGHT Suelto x 50u ,01x50u , 0.650, 0.000 05000000003068,0000306,Azúcar Impalpable JERACO x400gr. ,10x400 , 5.065, 0.000 07797109000026,0000306,Azúcar Impalpable JERACO x400gr. ,10x400 , 5.065, 0.000 05000000003075,0000307,Azúcar Impalpable JERACO x200gr. ,24x200 , 2.535, 0.000 07797109000019,0000307,Azúcar Impalpable JERACO x200gr. ,24x200 , 2.535, 0.000 07792540081054,0000317,Azúcar LEDESMA REAL - ANCASTE ,10x01Kg , 4.399, 0.000 07792540111010,0000317,Azúcar LEDESMA REAL - ANCASTE ,10x01Kg , 4.399, 0.000 07792540111027,0000317,Azúcar LEDESMA REAL - ANCASTE ,10x01Kg , 4.399, 0.000 05000000003662,0000366,Aceite COSTA DEL SOL Girasol Bidon pvc ,04x5Lt , 17.710, 0.000 07793065000070,0000366,Aceite COSTA DEL SOL Girasol Bidon pvc ,04x5Lt , 17.710, 0.000 07790070012050,0000391,Aceite COCINERO Girasol pet x900cc ,15x900cc , 3.200, 0.000
Espero puedan ayudarme, tengo el marote a la miseria.- Saludos. Daniel
7
« en: Viernes 27 de Mayo de 2011, 03:27 »
Hola Al fín dejo el código para ver si necesita corrección.- using System; using System.Collections.Generic; namespace Clientes { class datos { private string[] vec; public datos() { } public void detalle() { Console.Title = " Alta de Clientes"; for (byte a = 1; a < 50; a++) { Console.SetCursorPosition(a, 00); Console.Write("="); Console.SetCursorPosition(a, 02); Console.Write("="); } Console.SetCursorPosition(17, 01); Console.Write(" Alta de Clientes "); Console.SetCursorPosition(01, 04); Console.Write(" Nombre completo....:"); Console.SetCursorPosition(01, 05); Console.Write(" Dirección..........:"); Console.SetCursorPosition(01, 06); Console.Write(" Cód. postal........:"); Console.SetCursorPosition(01, 07); Console.Write(" Ciudad.............:"); Console.SetCursorPosition(01, 08); Console.Write(" Celular............:"); Console.SetCursorPosition(01, 09); Console.Write(" Crédito............:"); Console.SetCursorPosition(01, 10); Console.Write(" Plazo en días......:"); } public void ingreso() { string linea = ""; int op = 0; do { for (int cont = 0; cont < vec.Length ; cont++) { do { Console.SetCursorPosition(22, cont + 4); linea = Console.ReadLine(); } while ((linea == null) || (linea.Length == 0)); vec[cont] = linea; } Console.SetCursorPosition(01, 12); Console.Write(" [1] para guardar [2] para modificar [3] descarta y sale"); Console.SetCursorPosition(01, 14); Console.Write(" Ingrese opción...: "); byte ok = 0; do { if(byte.TryParse(Console.ReadLine(), out ok)) { switch (ok) { case 1: //Grabar datos ok = 1; op = 1; break; case 2: break; case 3: ok = 1; op = 1; break; default: ok = 0; Console.SetCursorPosition(21, 14); break; } } else { ok = 0; Console.SetCursorPosition(21, 14); } }while(ok == 0); } while(op != 1); } } class Clientes { static datos _datos; public static void Main(string[] args) { _datos.detalle(); _datos.ingreso(); } } }
Saludos. Daniel
8
« en: Jueves 26 de Mayo de 2011, 21:54 »
Hola a todos. viewtopic.php?f=50&t=45897No voy a repetir el código que con tanto esmero me enseño a construir el profe(x aquellos de mostrar algo de avance), lo que me trae en este caso es que quiero guardar los datos en un archivo .TXT pero no se x donde empezar, seguramente buscando en la Web y con mucho tipear lograría algo pero nunca va a ser tan eficiente como el que me pueden enseñar Uds. , si suena a egoísmo me lo harán saber.- Espero vuestra ayuda. Saludos. Daniel
9
« en: Miércoles 25 de Mayo de 2011, 18:58 »
Hola profe. Muchas gracias y tendré que combinar más la práctica con la teoría.-
Saludos. Daniel
10
« en: Martes 24 de Mayo de 2011, 02:32 »
Hola Profe. Me pudrías decir que criterio debo utilizar para saber cuando utilizar las propiedades en c#, me parecía que era una manera avanzada de programar y me encuentro que en el código anterior la terminaste descartando, te pido x favor que me lo expliques para saber a que atenerme.-
Un gran abrazo.- Daniel
11
« en: Domingo 22 de Mayo de 2011, 22:53 »
Hola Profe Que interesante para un estudiante solitario como yo encontrar a alguien con tanta predisposición para ayudar(enseñar) y tan didáctico.- Te dejo mi código para que me digas porque desde el método Main no puedo leer el array.- using System; using System.Collections.Generic; class Clientes { class datos { private string [] vec; public datos() { } public string this[int indice] { set { vec[indice] = value; } get { return vec[indice]; } } } public static void detalle() { for(byte a = 1; a<50; a++) { Console.SetCursorPosition(a,00); Console.Write("="); Console.SetCursorPosition(a,02); Console.Write("="); } Console.SetCursorPosition(17,01); Console.Write(" Alta de Clientes "); Console.SetCursorPosition(01,04); Console.Write(" Nombre completo....:"); Console.SetCursorPosition(01,05); Console.Write(" Dirección..........:"); Console.SetCursorPosition(01,06); Console.Write(" Cód. postal........:"); Console.SetCursorPosition(01,07); Console.Write(" Ciudad.............:"); Console.SetCursorPosition(01,08); Console.Write(" Celular............:"); Console.SetCursorPosition(01,09); Console.Write(" Crédito............:"); Console.SetCursorPosition(01,10); Console.Write(" Plazo en días......:"); } public static void ingreso() { datos _datos = new datos (); string linea = ""; for(int cont = 0; cont<7; cont++) { do { Console.SetCursorPosition(22,cont+4); linea = Console.ReadLine(); }while((linea == null) || (linea.Length==0)); _datos[cont] = linea; } } public static void Main(string[] args) { Console.Title = " Alta de Clientes"; detalle(); ingreso(); datos d_atos = new datos (); Console.SetCursorPosition(01,12); [i]Console.WriteLine(" Dirección...:" + d_atos[0]);[/i] Console.ReadKey(); } }
Bueno eso es todo, luego pondré en práctica lo del post anterior.- Saludos Profe.- Daniel
12
« en: Domingo 22 de Mayo de 2011, 18:25 »
Hola Valinor73. Esta línea estaba mal: // _datos.vec[cont] = linea; esta es la manera correcta para que funcione _datos[cont] = linea;.- Ahora tengo otro inconveniente, no logro leer el array desde el método principal, si desearan ayudarme yo agradecido.-
Saludos. Daniel
13
« en: Sábado 21 de Mayo de 2011, 21:49 »
Hola a todos. Espero que me tengan mucha paciencia y comprencíon ya que estoy estudiando con un manual y no tengo otra consulta que los foros y tutoriales de la web( y tengo 59 años).- El programa que expongo a continuación me genera un el siguiente error.- 'Clientes.datos.vec' no es accesible debido a su nivel de protección
Seguramente estoy declarando mal la clase pero si le pongo public empeora.- using System; using System.Collections.Generic; class Clientes { class datos { private string [] vec; public datos() { } public string this[int indice] { set { vec[indice] = value; } get { return vec[indice]; } } } public static void detalle() { for(byte a = 1; a<50; a++) { Console.SetCursorPosition(a,00); Console.Write("="); Console.SetCursorPosition(a,02); Console.Write("="); } Console.SetCursorPosition(17,01); Console.Write(" Alta de Clientes "); Console.SetCursorPosition(01,04); Console.Write(" Nombre completo....:"); Console.SetCursorPosition(01,05); Console.Write(" Dirección..........:"); Console.SetCursorPosition(01,06); Console.Write(" Cód. postal........:"); Console.SetCursorPosition(01,07); Console.Write(" Ciudad.............:"); Console.SetCursorPosition(01,08); Console.Write(" Celular............:"); Console.SetCursorPosition(01,09); Console.Write(" Crédito............:"); Console.SetCursorPosition(01,10); Console.Write(" Plazo en días......:"); } public static void ingreso() { datos _datos = new datos (); byte ver = 04; string linea = ""; for(int cont = 0; cont<7; cont++) { do { Console.SetCursorPosition(22,ver); linea = Console.ReadLine(); }while((linea == null) || (linea.Length==0)); // _datos.vec[cont] = linea; ver++; } } public static void Main(string[] args) { Console.Title = " Alta de Clientes"; detalle(); ingreso(); Console.SetCursorPosition(01,12); Console.Write(" Pulse una tecla para finalizar..."); Console.ReadKey(); } }
Espero me puedan ayudar.- Saludos. Daniel
14
« en: Domingo 9 de Enero de 2011, 14:42 »
Hola Juez Bueno no logro interpretar lo que me dices x aquello de la sección privada de datos, creo que cuando form1 llama a form2 vfp crea una tabla similar a la del form1 que al cerrar form2 todo lo que hayas hecho en la tabla contenida en el form2 no tiene ingerencia sobre la tabla original(form1).- Bueno, si lo que digo es realmente así lo voy a hacer de esta manera: desde el form2 -> form1.tag = "1289", 1289 es código seleccionado y con esto tengo en form1 el dato necesario.- Si no tienes una manera mejor lo voy hacer siempre de esta manera.-
Saludos. Daniel
15
« en: Jueves 6 de Enero de 2011, 00:49 »
Hola a todos.
El programa es para controlar los vencimientos de mercaderías.- Tengo hecho la búsqueda y la cuadricula en sendos contenedores en el form principal, esto funciona de maravillas y es medianamente fácil de programar, pero a nivel diseño es un poco molesto y además me pregunto que pasaría si tengo que hacer un programa de gestión comercial completo, de ninguna manera podría poner todo en un solo form.- Entonces me surge la necesidad de hacer todo x separado y encontré el primer escollo, en el form con la cuadricula estoy mostrando los datos usando un cursor, antes de cerrar el form(cuadricula) hago un seek para mover el puntero de la tabla vencimientos(la original) al lugar donde se encuentra el registro seleccionado, si hago un browse todo ok. Pero al cerrar el form con la cuadricula y regresar al principal el puntero esta en el mismo lugar que al principio.- Me podrían decir como lo hacen Uds.
Desde ya muchas gracias x el tiempo que le dediquen.-
Saludos. Daniel
16
« en: Domingo 12 de Diciembre de 2010, 16:35 »
Hola a todos. herramientas -> opciones -> forms y luego click en la casilla de chequeo que dice form ahi elegir donde esta la clase de formulario................
Saludos. Daniel
17
« en: Jueves 9 de Diciembre de 2010, 21:06 »
Hola a todos y perdón x preguntar algo que supongo debería ser simple pero hice muchas pruebas y no logro hacer un form a partir de una sub-clase.- Ya fui a Herramientas -> Opciones -> Controles -> Agregar etc,etc, me aparece en la barra de herramienta las clases, ¿pero como hago para arrastrar y soltar la clase form como lo haría con una clase botón?.-
Espero se entienda y desde ya muchas gracias x el tiempo que le dediquen.
Daniel
18
« en: Domingo 5 de Diciembre de 2010, 14:54 »
Hola juez Gracias x responder ahora me queda claro, solo pedirte disculpas x la tardanza en hacer este post.
Hasta la próxima. Daniel
19
« en: Jueves 2 de Diciembre de 2010, 17:50 »
Hola Juez Podrías ampliar un poco lo de :cambias thisform x el nombre del objeto, No entiendo, hace 60 días que estoy con VFP.-
Saludos. Daniel
20
« en: Miércoles 1 de Diciembre de 2010, 21:03 »
Hola a todos Tengo que escribir en mi programa 4 veces la misma rutina, ¿me podrian decir si desde un .PRG se pueden acceder y modificar las propiedades de los objetos.? ................ SET DELETED OFF CALCULATE CNT(), SUM(IIF(DELETED(),1,0)) TO _cantidad, _borrados SET DELETED ON IF _cantidad <> 1 IF _cantidad = 0 ThisForm.SetAll( "Enabled", .F., "CommandButton") ThisForm.bAgregar.Enabled = .T. ThisForm.bSalir.Enabled = .T. GO TOP ELSE SEEK configura.gorecno ENDIF ELSE ThisForm.bBuscar.Enabled = .F. GO TOP ENDIF IF _borrados = 0 ThisForm.bRecupera.Enabled = .F. ENDIF ThisForm.LblAyuda.Visible = .F. ThisForm.LbAyuda3.Visible = .F. .............
Si dije algo descabellado perdón, si es factible ¿me podrían dar algún ejemplo?.- Saludos. Daniel
21
« en: Lunes 8 de Noviembre de 2010, 17:50 »
Hola softevolutions Gracias x responder, lo solucione con este código.-
ThisForm.SetAll( "Enabled", .F., "TextBox")
Igual lo del panel es muy bueno.-
Saludos. Daniel
22
« en: Domingo 31 de Octubre de 2010, 14:17 »
Hola a todos. Soy nuevo en el foro y voy a presentarme, tengo 58 años y como comprenderán ya no voy a concurrir a la universidad, estoy estudiando C con un manual de deitel&deitel y muchaaaaas consulta a los foros.- El caso es que una amiga me pidió que le hiciera un programita para vencimientos de productos, tengo un cierto conocimiento en FoxPro para Windows pero nada en visual FoxPro que es donde lo voy a hacer.- La consulta: Tengo 4 Text Box en el formulario y tienen que estar desabilitados hasta hacer click en <Editar> o <Agregar> y luego de <Graba> <descarta>, hay una manera de hacer mediante programación que se deshabiliten/habiliten con 1 solo comando los 4 o tengo que poner uno x uno Enabled .F. y Enabled .T. ?.-
Espero ayuda.- Saludos. Daniel
23
« en: Viernes 4 de Junio de 2010, 18:58 »
Hola Para continuar con mi aprendizaje de C quiero hacerlo con Estructuras,punteros y manejo de archivos, consideran que haciendo una agenda puedo abarcar los 3 temas o alguien me puede sugerir hacer otro tipo de programa?.-
Espero ayuda. Saludos y gracias. Daniel
Nota:No recuerdo si lo expuse en este foro pero por si acaso debo aclarar que tengo 58 años y por mi trabajo y lo 90 k. que me separan de la casa de estudio mas cercana lo estoy haciendo con la ayuda de libros y de foros.-
24
« en: Domingo 16 de Mayo de 2010, 22:44 »
Hola Bueno al fin conseguí hacer el programa.- #include <stdio.h> #include <windows.h> int main (int argc,char *argv[]) { int v1; char varTotal = 0; printf("n En las siguientes preguntas, responde connn"); printf(" 0- Si la respuesta es NOn"); printf(" 1- Si la respuesta es SI") ; printf("nn Es la ciudad de Buenos Aires La capital de Buenos Aires? "); v1=(v1)?1:0; varTotal=varTotal|(v1); v1=0; printf("n Es la ciudad de Santa Fx82 la capital de Santa Fx82? "); v1=(v1)?1:0; varTotal=varTotal|(v1<<1); v1=0; printf("n Es la ciudad de Rawson la capital de Chubut? "); v1=(v1)?1:0; varTotal=varTotal|(v1<<2); ((varTotal &(1)))?printf("n Incorrecto:"):printf("n Correcto:"); printf("La ciudad de la Plata es la capital de Buenos Aires"); ((varTotal &(2))>>1)?printf("n Incorrecto:"):printf("n Correcto:"); printf("La ciudad de Santa Fx82 de la Vera Cruz es la capital de Santa Fx82"); ((varTotal &(4))>>2)?printf("n Correcto:"):printf("n Incorrecto:"); printf("La ciudad de Rawson es la capital de Chubut"); return 0; }
Saludos. Daniel
25
« en: Sábado 15 de Mayo de 2010, 19:05 »
Hola a todos. Quiero hacer un cuestionario con 8 preguntas(1 para Si y 0 para el No), el caso es que los 8 resultados los quiero alojar en los 8 bits de un char, hice un avance que a continuación muestro.- #include <stdio.h> #include <stdlib.h> #include <conio.h> int main(int argc, char *argv[]) { int ing = 0; char respuesta = 0; printf("nt Ingresa 0 o 1.....: "); respuesta=respuesta|(ing<<0); printf("nt %c",(respuesta &(1))>>1); printf("nt Ingresa 0 o 1.....: "); respuesta=respuesta|(ing<<1); printf("nt %c",(respuesta &(2))>>1); return 0; }
Me podrían dar una mano diciendome que estoy haciendo mal?(no me da error de compilación pero no tengo claro si lo echo esta bien y si funciona).- Gracias y saludos. Daniel
|
|
|