C/C++

Tema 2 · Variables, tipus, operadors

Introducció

Tot programa necessita emmagatzemar dades. En C, les variables són contenidors amb un tipus definit (enter, decimal, caràcter...). Amb scanf() podem llegir dades de l'usuari i amb printf() les mostrem per pantalla.

Objectius

  • Declarar variables dels tipus int, float, char
  • Utilitzar scanf() per llegir dades del teclat
  • Mostrar resultats amb printf() i caràcters de format
  • Dissenyar un petit conversor d'ADN a ARN

Variables i entrada/eixida

Exemple bàsic amb diferents tipus de dades:

#include <stdio.h>

int main() {
    int edat = 20;
    float pes = 65.5;
    char grup_sanguini = 'A';

    printf("Edat: %d anys\n", edat);
    printf("Pes: %.1f kg\n", pes);
    printf("Grup sanguini: %c\n", grup_sanguini);

    return 0;
}
%d = enter, %f = float, %c = char

Ara llegim dades des del teclat amb scanf():

#include <stdio.h>

int main() {
    char base_nitrogenada;

    printf("Introdueix una base (A, C, G, T): ");
    scanf(" %c", &base_nitrogenada);  // l'espai abans de %c evita problemes

    printf("Has introduït: %c\n", base_nitrogenada);

    return 0;
}
Recorda: & davant la variable en scanf()

Exercicis

  1. Declara una variable int per a l'edat d'un pacient i mostra-la amb printf().
  2. Llegeix el nom d'un gen (cadena de text) amb scanf() i imprimeix-lo.
  3. Escriu un programa que demani el %GC d'una seqüència (float) i el mostri amb dos decimals.

Mini Projecte – Conversor ADN → ARN

Crea un programa que lligi una base nitrogenada d'ADN (A, C, G, T) i mostri la base complementària d'ARN:

  • A (ADN) → U (ARN)
  • CG
  • GC
  • TA

Després amplia el programa per a convertir una seqüència sencera de 3 bases (ex: "ATG" → "UAC").