Um programa de computador comumente requer o uso de dados para operar adequadamente. Por exemplo, considere o aplicativo de mensagens WhatsApp. Quando queremos enviar uma mensagem para um colega, nós escrevemos a mensagem na caixa de texto que aparece na tela do aplicativo. O texto neste caso é o dado que está sendo transmitido para o programa WhatsApp do nosso aparelho, que por sua vez transmitirá o mesmo para o dispositivo do colega..
A interação não está limitada ao uso do teclado. Por exemplo, quando queremos nos deslocar até um local da cidade, podemos utilizar um aplicativo de mapa como o Waze ou Google Maps. Nestes aplicativos, é comum tocarmos no mapa para marcar o destino. O toque permite que o programa possa obter a latitude e longitude do respectivo local e traçar a respectiva rota. A Figura 1 ilustra tais etapas.

Perceba que, em ambos casos, os programas esperam a inserção de um dado para que se realize o processamento. O processo de inserção de dados é conhecido como entrada do sistema. Os dados de entrada são aqueles que são fornecidos para que o sistema opere adequadamente. Note que, após o recebimento do dado, o sistema processa o mesmo e produz um resultado. O produto do processamento é tipicamente uma informação, por exemplo, a rota que se deve seguir. Esse é um dos motivos para o nome Tecnologia da Informação, uma vez que em essência os computadores recebem dados de entradas, como a latitude e longitude, e produzem informações, como a melhor rota naquele horário.
Perceba que, em ambos casos, os programas esperam a inserção de um dado para que se realize o processamento. O processo de inserção de dados é conhecido como entrada do sistema. Os dados de entrada são aqueles que são fornecidos para que o sistema opera adequadamente. Como o programa deve operar para diferentes usuários, observe que
Programa C
#include <stdio.h>
int main() {
int pa;
int pd;
int r;
printf("PA: ");
scanf("%i", &a);
printf("PD: ");
scanf("%i", &d);
r = d - a;
printf("Operação:");
printf("%i", r);
}
Algoritmo em pseudocódigo
ALGORITMO DECLARE pa NUMÉRICO DECLARE pd NUMÉRICO DECLARE r NUMÉRICO ESCREVA "PA: " LEIA pa ESCREVA "PD: " LEIA pn r 🡨 d - a ESCREVA "Operação" ESCREVA r FIM_ALGORITMO
Exemplo
x = input("Digite F: ")
f = float(x)
c = f - 32 / 1.8
print("Celsius: ", c)
x = input("Digite F: ")
f = float(x)
c = f - 32 / 1.8
print("Celsius: ", c)
Teste
#include <stdio.h>
int main() {
int a;
int d;
int r;
printf("Digite a pressão atual do pneu: ");
scanf("%i", &a);
printf("Escolha a pressão desejada: ");
scanf("%i", &d);
r = d - a;
printf("Vamos realizar a seguinte operação: %i", r);
return 0;
}
| Entrada | Saída |
|---|---|
| Digite a pressão atual do pneu: 12 Escolha a pressão desejada: 32 | Vamos realizar a seguinte operação: 10 |
| Digite a pressão atual do pneu: 37 Escolha a pressão desejada: 31 | Vamos realizar a seguinte operação: -6 |
| Digite a pressão atual do pneu: 28 Escolha a pressão desejada: 28 | Vamos realizar a seguinte operação: 0 |
Leitura de dados
#include <stdio.h>
#include <string.h>
int main() {
char s[20];
scanf("%s", &s[0]);
int t = strlen(s);
printf("%i", t);
}
dfad
O comando scan() permite fazer a leitura de dados via teclado. O comando possui vários parâmetros, tais como:
- nmax = número máximo de valores a serem lidos;
- what = qual o tipo (domínio) dos valores a serem lidos;
- file = permite especificar o nome do arquivo que será utilizado para a leitura. Por padrão, não se usa um arquivo, mas sim o teclado como fonte dos dados de entrada.
Considere o seguinte programa
library(tidyverse)
df <- mtcars %>% drop_na()
df <- df %>% select(mpg, wt, hp)
df[["mpg"]] %>% mean %>% print
print(df[["mpg"]] %>% mean %>% print)
library(genalg)
library(ggplot2)
dataset <- data.frame(item = c("pocketknife", "beans", "potatoes", "unions",
"sleeping bag", "rope", "compass"),
survivalpoints = c(10, 20, 15, 2, 30, 10, 30),
weight = c(1, 5, 10, 1, 7, 5, 1))
weightlimit <- 20
v
| Entrada | Saída |
|---|---|
| 42 | 3423432 |
| 3423432 | 432423 |
Entrada
f <- scan(n = 1, what = double())
c <- (f - 32) / 1.8
print(c)
n <- scan(nmax = 1)
i <- 0
m <- 0
v <- 0
while (i < n) {
i <- i + 1
l <- scan(nmax = 1)
if (l > m) {
m <- l
v <- i
}
}
print(v)
Saída
32
Exemplo:
f <- scan(n = 1, what = double())
c <- (f - 32) / 1.8
print(c)
n <- scan(nmax = 1)
i <- 0
m <- 0
v <- 0
while (i < n) {
i <- i + 1
l <- scan(nmax = 1)
if (l > m) {
m <- l
v <- i
}
}
print(v)
Caso a entrada seja 40
Documentação: https://www.rdocumentation.org/packages/base/versions/3.6.2/topics/scan