CBSE Clase 11 C++ | Papel de muestra -2

Modelo Pregunta Papel
Clase- XI
Informática
M.M: 70 Tiempo: 3 hrs.
Instrucciones:
1. Todas las preguntas son obligatorias.
2. Lenguaje de programación: C++

P.1[A] ¿En qué se diferencia un compilador de un intérprete ? 2
El compilador y el intérprete son dos formas diferentes de ejecutar un programa escrito en un lenguaje de programación o scripting.

  • El compilador toma el programa completo y lo convierte en código objeto que normalmente se almacena en un archivo. El código objeto también se referencia como código binario y la máquina puede ejecutarlo directamente después de la vinculación. Ejemplos de lenguajes de programación compilados son C y C++.
  • Interpreter ejecuta directamente instrucciones escritas en un lenguaje de programación o secuencias de comandos sin convertirlas previamente a un código de objeto o código de máquina. Ejemplos de lenguajes interpretados son Perl, Python y Matlab.

Consulte: Compilador vs Intérprete

[B] ¿Qué entiendes por software de aplicación? 2
Estos son el software básico que se utiliza para ejecutar una acción y tarea en particular. Estos son el software dedicado, dedicado a realizar tareas simples y únicas. Estos se dividen en dos tipos:
a) El Software de Aplicación de Propósito General:
Microsoft Excel – Se utiliza para preparar hojas de Excel.
VLC Media Player: se utiliza para reproducir archivos de audio/video.
Adobe Photoshop: se utiliza para el diseño y la animación y muchos más.
b) El software de aplicación de propósito específico:
Sistema de reserva de boletos Sistema
de gestión de atención médica
Consulte: Conceptos de software

[C] ¿Quién inventó la tarjeta perforada? 1
Herman Hollerith inventó la tarjeta perforada.

[D] ¿Nombra las supercomputadoras desarrolladas en la India? 1
Las supercomputadoras desarrolladas en India son: PARAM, ANURAG

P.2[A] ¿Qué se entiende por degradación elegante? 2
La degradación elegante es la capacidad de una computadora, máquina, sistema electrónico o red para mantener una funcionalidad limitada incluso cuando una gran parte de ella ha sido destruida o inutilizada.

[B] ¿Por qué los errores lógicos son más difíciles de localizar? 2
El tipo de errores que proporcionan una salida incorrecta pero que parece estar libre de errores se denominan errores lógicos. Estos son uno de los errores más comunes que cometen los principiantes en programación.
Los errores lógicos son difíciles de encontrar porque aislar estos errores depende únicamente del pensamiento lógico del programador y solo se pueden detectar si seguimos la línea de ejecución y determinamos por qué el programa toma una ruta específica de ejecución.
Consulte: Errores lógicos

[C] Escriba los pasos necesarios para desarrollar un programa y explique los pasos brevemente. 3
El desarrollo del programa requiere de 6 fases, son las siguientes:
Definición del Problema.
Análisis del problema.
Desarrollo de algoritmos.
Codificación y Documentación.
Pruebas y depuración.
Mantenimiento.

P3[A] Nombre los archivos de encabezado a los que pertenece lo siguiente:- 2
(i)exit() : process.h
(ii) gets() : stdio.h
(iii) tolower() : ctype.h
(iv) malloc() : stdlib.h

[B] ¿Cuál será el resultado de las siguientes sentencias: 2
(i) a = sqrt(16) : 16
(ii) b= strlen(“COMPUTER”) : 8
(iii)c = ceil(13.45) : 14
( iv) d =abs(-6) : 6

[C] ¿Cuál es el propósito del operador sizeof? 2
Sizeof es un operador unario en tiempo de compilación que se puede utilizar para calcular el tamaño de su operando. El resultado de sizeof es un tipo integral sin signo. Sizeof se puede aplicar a cualquier tipo de datos, incluidos los tipos primitivos, como los tipos enteros y de punto flotante, los tipos de puntero o los tipos de datos compuestos, como la estructura, la unión, etc.
Consulte: operador sizeof

[D] Escriba las diferencias entre el operador unario y el operador binario 2 Operador
unario: los operadores que actúan sobre un solo operando para producir un nuevo valor.
Tipos de operadores unarios: menos(-) unario, incremento(++), decremento(–), NOT(!), Dirección del operador(&) y operador sizeof() Operador
Binario: Los operadores que operan o trabajan con dos operandos son operadores binarios. ejemplo: Tipos de operadores binarios: Suma (+), Resta (–), Multiplicación (*), División(/), etc.
Consulte: Operadores unarios en C/C++ , Operadores en C++

P.4[A] Escriba las diferencias entre el bucle controlado de entrada y el bucle controlado de salida 2

  • Bucles controlados de entrada: en este tipo de bucles, la condición de prueba se prueba antes de ingresar al cuerpo del bucle. Ejemplo: For Loop y While Loop son bucles controlados por entrada.
  • Bucles controlados de salida: en este tipo de bucles, la condición de prueba se prueba o evalúa al final del cuerpo del bucle. Por lo tanto, el cuerpo del bucle se ejecutará al menos una vez, independientemente de si la condición de prueba es verdadera o falsa. Ejemplo: Do ​​while loop es un loop controlado por salida.

Consulte: Bucles en C++

[B] Escriba un programa para ingresar un carácter e imprimir si un carácter dado es un alfabeto, un dígito o cualquier otro carácter.
Lógica: todos los caracteres, ya sean alfabéticos, dígitos o caracteres especiales, tienen valor ASCII. El carácter de entrada del usuario determinará si se trata de un carácter alfabético, numérico o especial.
Rangos de valores ASCII:
para letras mayúsculas 65 – 90
Para letras pequeñas 97 – 122
Para dígitos 48 – 57
Todos los demás casos son caracteres especiales.

// CPP program to find type of input character
#include <iostream>
using namespace std;
  
void charCheck(char input_char)
{
    // CHECKING FOR ALPHABET
    if ((input_char >= 65 && input_char <= 122))
        cout << " Alphabet ";
  
    // CHECKING FOR DIGITS
    else if (input_char >= 48 && input_char <= 57)
        cout << " Digit ";
  
    // OTHERWISE SPECIAL CHARACTER
    else
        cout << " Special Character ";
}
  
// Driver Code
int main()
{
    char input_char = '$';
    charCheck(input_char);
    return 0;
}

[C] Dé la salida para el siguiente segmento de programa: 2

i.for (int i = 10; i > 6; i = i - 2)
        cout
    << i << endl;
  
Output : 10, 8
  
                 (ii) for (int i = -5; i > -7; i--)
                     cout
                 << i + 1 << endl;
>
  
    Output : -4,
    -5

P.5[A] ¿Cuál es la diferencia entre las siguientes dos afirmaciones:- 1
(i) int sum[10];
(ii) int suma[10]= 20;
La diferencia entre estas dos declaraciones es:
en la primera declaración, se ha declarado una array de enteros de 10 elementos y no se asignan valores a los elementos de la array.
En la segunda sentencia se ha declarado un arreglo entero de 10 elementos y a todos los elementos del arreglo se les ha asignado el valor = 20

[B] Vuelva a escribir el siguiente programa después de eliminar los errores sintácticos. Subraye cada
corrección. 3

#include <iostream.h>
main()
{
 int x[5], y, z[5]
 for( i=0;i<5;i++
 {
        x[i] = i;
        z = i + 3;
        y = z;
        x = y;
 }
}
  
// Correct code:
  
void main()
{
    int x[5], y, z[5];
    for (int i = 0; i < 5; i++) {
        x[i] = i;
        z = i + 3;
        y = z;
        x[i] = y;
    }
}

[C] Encuentra la salida del siguiente programa: 2

#include <iostream.h>
main()
{
    int a[4], i;
    for (i = 0; i < 4; i++)
        a[i] = 5 * i;
    for (i = 0; i < 4; i++)
        cout << a[i];
}

Salida: 0, 5, 10, 15

[D] Escriba un programa para leer una string e imprimir cuántas palabras hay almacenadas en la string. 3

// C++ program to count no of words
// from given input string.
#include <iostream>
using namespace std;
#define OUT 0
#define IN 1
  
// returns number of words in str
unsigned countWords(char* str)
{
    int state = OUT;
    unsigned wc = 0; // word count
  
    // Scan all characters one by one
    while (*str) {
        // If next character is a separator, set the
        // state as OUT
        if (*str == ' ')
            state = OUT;
  
        // If next character is not a word separator and
        // state is OUT, then set the state as IN and
        // increment word count
        else if (state == OUT) {
            state = IN;
            ++wc;
        }
  
        // Move to next character
        ++str;
    }
    return wc;
}
  
// Driver program to test above functions
int main(void)
{
    char str[] = "One two three  four five  ";
    cout<<"No of words : %u"<<countWords(str));
    return 0;
}

[E] Escriba un programa para encontrar la suma de los elementos de un arreglo. 3

#include <iostream>
using namespace std;
  
int arraysum(int arr[], int n)
{
    int i, sum = 0;
    for (i = 0; i < n; i++)
        sum = sum + arr[i];
    cout << sum;
    return 0;
}
  
int main()
{
    int arr[10];
    int i;
    cout << "enter array elements";
    for (i = 0; i < 10; i++)
        cin >> arr[i];
    arraysum(arr, 10);
    return 0;
}

P.6[A] ¿A qué se refiere con prototipo de función? 1
El prototipo de función le dice al compilador sobre el número de parámetros que toma la función, los tipos de datos de los parámetros y el tipo de retorno de la función. Al usar esta información, el compilador verifica los parámetros de la función y su tipo de datos con la definición de la función y la llamada a la función.
Referencia: Prototipo de función

[B] ¿Qué se entiende por alcance? El nombre de todo tipo de ámbito es compatible con C++. 3
En programación, el alcance de una variable se define como la extensión del código del programa dentro del cual se puede acceder, declarar o trabajar con la variable. Existen principalmente dos tipos de ámbitos de variables, como se analiza a continuación:
Variables locales Las
variables definidas dentro de una función o bloque se dice que son locales para esas funciones.
Variables globales
Como sugiere el nombre, se puede acceder a las variables globales desde cualquier parte del programa. Están disponibles durante todo el tiempo de vida de un programa. Se declaran en la parte superior del programa fuera de todas las funciones o bloques.
Consulte: Alcance de las variables en C++

[C] Encuentra la salida de lo siguiente: 3

#include <iostream.h>
int max(int& x, int& y, int& z)
{
    if (x > y && y > z) {
        y++;
        z++;
        return x;
    }
    else {
        if (y > x)
            return y;
        else
            return z;
    }
    void main()
    {
        int a = 10, b = 13, c = 8;
        a = max(a, b, c);
        cout << a << b << c;
        b = max(a, b, c);
        cout << ++a << ++b << ++c << endl;
    }

Con a=10, b=13, c=8 cuando se llama por primera vez a max(a, b, c), el resultado es:
13 13 8
La segunda vez que se llama a la función, a b se le asigna un valor de 8, y el la salida es:
14 9 9

[D] Escriba un programa C++ completo que lea una array flotante que tenga 15 elementos. El programa usa una función reverse() para invertir esta array. 4

#include <iostream>
using namespace std;
  
// function to swap elements
int swap(float* a, float* b)
{
    float temp;
    temp = *a;
    *a = *b;
    *b = temp;
}
// function to reverse the elements by
// swapping each element from the start
// and the end
  
int reverse(float arr[])
{
    int i = 0, j = 14;
    while (i < j) {
        swap(&arr[i], &arr[j]);
        i++;
        j--;
    }
    for (i = 0; i < 15; i++)
        cout << arr[i] << endl;
    return 0;
}
  
// driver function
int main()
{
    float arr[5] = { 0 };
    int i;
    cout << "enter the elements";
    for (int i = 0; i < 15; i++)
        cin >> arr[i];
    reverse(arr);
}

[E] Escriba una función C++ que tenga dos parámetros x de tipo flotante y n de tipo entero con resultado de tipo flotante para encontrar la suma de las siguientes series: –
1 + x/2. + x 2/4 ! + x 3 /6! +……………………+ x n /2n!

#include <iostream>
#include <math.h>
using namespace std;
  
int fact(int z)
{
    if (z == 1)
        return 1;
    return x * fact(x - 1);
}
  
double sum(int x, int n)
{
    double i, total = 1.0;
    for (i = 1; i <= n; i++)
        total = total + (pow(x, i) / fact(2 * i));
    return total;
}
  
// Driver code
int main()
{
    int x;
    int n;
    cout << "" enter x and n ";
                               cin
                               >> x >> n printf("%.2f", sum(x, n));
    return 0;
}

P.7[A] Diferencia entre UPS en línea y UPS fuera de línea. 2
Los sistemas UPS en línea obtienen su energía a través de los componentes de carga y acondicionamiento de energía durante las operaciones normales.
Los SAI fuera de línea son sistemas en los que la carga se alimenta directamente de la red principal durante el funcionamiento normal, en lugar de las salidas del inversor, en la medida en que los componentes de almacenamiento de energía, como cargadores, inversores y baterías, están fuera de línea en lo que respecta a la carga.

[B] Explique cuáles son las dos categorías de impresoras. 2
Las impresoras son dispositivos de salida que se utilizan para preparar dispositivos de salida permanentes en papel. Las impresoras se pueden dividir en dos categorías principales:
Impresoras de impacto: en estas, los martillos o alfileres golpean contra una cinta y papel para imprimir el texto. Este mecanismo se conoce como mecanismo electromecánico. Son de dos tipos.
Ejemplo:
Impresora de Caracteres: Imprime solo un caracter a la vez. Tiene una velocidad relativamente más lenta. P.ej. De ellos son impresoras de array de puntos.
Impresora de array de puntos: Imprime caracteres como una combinación de puntos. Las impresoras de array de puntos son las más populares entre las impresoras en serie.
Impresoras sin impacto: Hay impresoras que utilizan tecnología sin impacto, como la tecnología de chorro de tinta o láser. Allí, las impresoras proporcionan una mejor calidad de O/P a mayor velocidad.
Ejemplo: Impresora de chorro de tinta

[C] ¿Qué es el tiempo de acceso? 1
El tiempo de acceso es el tiempo desde el inicio del acceso a un dispositivo de almacenamiento hasta el momento en que se puede iniciar el siguiente acceso. El tiempo de acceso consiste en la latencia (la sobrecarga de llegar al lugar correcto en el dispositivo y prepararse para acceder a él) y el tiempo de transferencia.
El término se aplica tanto al acceso a la memoria de acceso aleatorio (RAM) como al acceso al disco duro y al CD-ROM.

[E] Convierta lo siguiente a su sistema numérico equivalente binario: 3
(i) (EB4A) 16 = (60234) 10
(ii) (84) 10 = (1010100) 2
(iii)(B2F) 16 = (5457) 8

Para más detalles, consulte: Conversiones base

[F] Encuentre la forma de complemento a uno de ocho bits de lo siguiente: 2
(i) -14 (ii) -49
Solución: El complemento a 1 de un número negativo se calcula invirtiendo los bits de su representación binaria.
-14 = -(00001110) 2 = (11110001) 1
-49 = -(00110001) 2 = (11001110) 1

Publicación traducida automáticamente

Artículo escrito por aishwaryaagarwal2 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *