Dev - C++ - Ayuda con un problema en C

 
Vista:

Ayuda con un problema en C

Publicado por Eduardo Vázquez (1 intervención) el 22/05/2020 04:56:47
Buenas noches chicos, tengo un problema para resolver el siguiente planteamiento y quisiera que me ayudaran a solucionarlo :
Desarrolla de manera individual una función o procedimiento que permita a partir de un carácter ingresado y de un numero entero mayor a 0, realizar el desglose en líneas diferentes desde el caracter siguiente según su posición en el alfabeto, confirme al número de caracteres consecutivos.

Ejemplo:

Carácter: M
Número de caracteres consecutivos: 5
Resultado:
NOPQR

Esto se debe a que los siguientes 5 caracteres del alfabeto después de la M son los que se muestran en el resultado. La solicitud del carácter y el número de caracteres consecutivos se hará en el main, el resultado deberá ser considerado como parte de la función. El nombre de la función o procedimiento será SECUENCIA

Consideraciones: Únicamente se podrá ingresar un carácter, en caso contrario, el programa deberá terminar. El valor numérico deberá ser mayor a 0, en caso contrario, volver a leerse. El desglose máximo será hasta la Z por lo que si el carácter proporcionado fuera por ejemplo la W y el número de caracteres consecutivos fuera 8, el resultado que se debería obtener sería: XYZ. Esto se debe a que no hay más caracteres a la derecha.
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
Imágen de perfil de Alfil
Val: 4.344
Oro
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con un problema en C

Publicado por Alfil (1444 intervenciones) el 22/05/2020 08:16:12
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
#include <iostream>
#include <cctype>
 
void secuencia(char c, int n);
 
int main()
{
    char c, temp;
    int n;
 
    std::cout << "\nCaracter: "; std::cin >> c;
    c = toupper(c);
 
    while ((temp = getchar()) != '\n' && temp != EOF)
        return 0;
 
    do {
        std::cout << "Numero de caracteres consecutivos: "; std::cin >> n;
        if (std::cin.fail() || std::cin.bad())
            return 0;
 
    } while (n < 0);
 
    secuencia(c, n);
 
    return 0;
}
 
void secuencia(char c, int n)
{
    int k = 1;
 
    while (c + k <= 'Z' && k <= n)
        std::cout << char(c + k++);
 
    std::cout << std::endl;
}
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
Imágen de perfil de Alfil
Val: 4.344
Oro
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con un problema en C

Publicado por Alfil (1444 intervenciones) el 22/05/2020 09:14:25
Versión C

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
#include <stdio.h>
#include <ctype.h>
 
void secuencia(char c, int n);
 
int main()
{
    char c, temp;
    int n;
 
    printf("\nCaracter: "); c = getchar();
    c = toupper(c);
 
    while ((temp = getchar()) != '\n' && temp != EOF)
        return 0;
 
    do {
        printf("Numero de caracteres consecutivos: "); scanf("%d", &n);
 
    } while (n < 0);
 
    secuencia(c, n);
 
    return 0;
}
 
void secuencia(char c, int n)
{
    int k = 1;
 
    while (c + k <= 'Z' && k <= n)
        printf("%c", char(c + k++));
 
    printf("\n");
}
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