Pascal/Turbo Pascal - operaciones basicas con vesctores en pascal

 
Vista:
sin imagen de perfil

operaciones basicas con vesctores en pascal

Publicado por Esteban (9 intervenciones) el 03/05/2016 18:34:50
Hola buenas, alguien me podria ayudar con este problema?


Desarrolla un programa que cuente el número de apariciones de cada letra del alfabeto
(independientemente de si es mayúscula o minúscula, “K” es lo mismo que “k”) en una frase
introducida por teclado, que finaliza en un salto de línea. Ignora la letra “ñ”, así como signos
de puntuación, cifras y otros caracteres. Puede haber letras mayúsculas y minúsculas. Ten en
cuenta solamente las letras. El programa deberá mostrar por pantalla todas las letras que han
aparecido al menos una vez por orden alfabético, junto con el número de veces que han
aparecido.


Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

operaciones basicas con vesctores en pascal

Publicado por ramon (2158 intervenciones) el 05/05/2016 10:57:34
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
{Mira esto}
 
 program letras;
 
  uses
     crt;
   type
     letra = array['A'..'Z'] of integer;
 
   var
     let : letra;
     texto : string;
     i : integer;
     x : char;
 
 
  procedure entradatexto;
  begin
     writeln('    Entre Texto Termina Enter Naximos Caracteres 255');
     writeln;
     readln(texto);
  end;
 
  begin
     clrscr;
     entradatexto;
     fillchar(let,sizeof(let),0);
     for i := 1 to length(texto) do
     begin
     texto[i] := upcase(texto[i]);
     if texto[i] in['A'..'Z'] then
     let[texto[i]] := let[texto[i]] + 1;
     end;
     clrscr;
     writeln('   El Resultado Es ');
     writeln;
     for x := 'A' to 'Z' do
     if let[x] > 0 then
     writeln('   ',x,' = ',let[x]);
     readln;
  end.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

operaciones basicas con vesctores en pascal

Publicado por Esteban (9 intervenciones) el 05/05/2016 15:44:16
Muchas gracias por responder a los dos ejercicios Ramón, pero el texto de salida de pascal debe ser el que ya esta especificado en el ejercicio, cosa que se me olvida adjuntar, aqui te adjunto la pagina web y como debe ser la salida por pascal.

https://moodle2.unizar.es/add/pluginfile.php/752180/course/section/158152/04_vectores_y_registros.pdf

Gracias de nuevo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

operaciones basicas con vesctores en pascal

Publicado por ramon (2158 intervenciones) el 05/05/2016 18:44:54
Solo puedo acceder como invitado y no al documento pásalo tu aquí.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

operaciones basicas con vesctores en pascal

Publicado por ramon (2158 intervenciones) el 06/05/2016 19:12:53
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
{Mira Primero}
 
 program colorRGB;
  uses
     crt;
   var
     color : array[1..3] of byte;
     grises : array[1..3] of byte;
     datocolor : byte;
 
  procedure entracolor;
  begin
     writeln('   Entrada De Valores R G B ');
     writeln;
     write('  Entre Valor Del Rojo 0..255  : ');
     readln(datocolor);
     color[1] := datocolor;
     write('  Entre Valor Del Azul 0..255  : ');
     readln(datocolor);
     color[2] := datocolor;
     write('  Entre Valor Del Verde 0..255 : ');
     readln(datocolor);
     color[3] := datocolor;
   end;
 
   procedure presentagrises;
   var
     gris : byte;
   begin
       gris := (color[1] + color[2] + color[3]) div 3;
       grises[1] := gris;
       grises[2] := gris;
       grises[3] := gris;
   end;
 
   begin
      clrscr;
      entracolor;
      clrscr;
      writeln('  Los Colores Entrados Son   = ',color[1],' ',color[2],
                 ' ',color[3]);
      presentagrises;
      writeln;
      writeln('  Los Grises Resultantes Son = ',grises[1],' ',grises[2],
                 ' ',grises[3]);
      writeln;
      writeln('  Pulse Una Tecla');
      readkey;
   end.
 
{Segundo}
 
 program apariciones;
  uses
     crt;
   type
     letra = array['A'..'Z'] of integer;
 
   var
     let : letra;
     texto : string;
     i : integer;
     x : char;
 
 
  procedure entradatexto;
  begin
     writeln('    Entre Texto Termina Enter Naximos Caracteres 255');
     writeln;
     readln(texto);
  end;
 
  begin
     clrscr;
     entradatexto;
     fillchar(let,sizeof(let),0);
     for i := 1 to length(texto) do
     begin
     texto[i] := upcase(texto[i]);
     if texto[i] in['A'..'Z'] then
     let[texto[i]] := let[texto[i]] + 1;
     end;
     clrscr;
     writeln('   El Resultado Es ');
     writeln;
     for x := 'A' to 'Z' do
     if let[x] > 0 then
     writeln('   ',x,' = ',let[x]);
     readln;
  end.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

operaciones basicas con vesctores en pascal

Publicado por Esteban (9 intervenciones) el 11/05/2016 15:41:12
Muchas gracias.
Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar