Capa para posts com Tabelas

Comandos Portugol vs C#

Tabela que mostra uma comparação entre os comandos do Portugol (Visualg) e do C# de forma a ajudar o aluno na transição entre uma linguagem e outra.

O Senhor dos Algoritmos

Essa tabela pode ser encontrada para
download no e-book O Senhor dos Algoritmos.

ComandoPortugolC#
Variável tipo inteiroi: inteirosbyte i;
short i;
int i;
long i;

byte i;
ushort i;
uint i;
ulong i;
Variável tipo reald: realfloat d;
double d;
decimal d:
Variável tipo lógicob: logicobool b;
Variável tipo textos: caracterechar s;
string s;
Variável tipo vetorv: vetor[linha1..linhaN] de tipotipo[] v = new tipo[linhas];
Variável tipo matrizm: vetor[linha1..linhaN, coluna1..colunaN] de tipotipo[,] m = new tipo[linhas, colunas];
Exemplos de literais (valores) do tipo inteiro33 // int
3L // long
3U // unsigned int
3UL // unsigned long
Exemplos de literais (valores) do tipo real3.143.14F // float
3.14 // double
3.14M // decimal
Exemplos de literais (valores) do tipo lógicoFALSO
VERDADEIRO
false
true
Exemplos de literais (valores) do tipo texto"texto entre aspas"'C' // char
"texto entre aspas" // string
Ler valor tipo inteiroleia(i)i = sbyte.Parse(Console.ReadLine());
i = short.Parse(Console.ReadLine());
i = int.Parse(Console.ReadLine());
i = long.Parse(Console.ReadLine());

i = byte.Parse(Console.ReadLine());
i = ushort.Parse(Console.ReadLine());
i = uint.Parse(Console.ReadLine());
i = ulong.Parse(Console.ReadLine());
Ler valor tipo realleia(d)d = float.Parse(Console.ReadLine());
d = double.Parse(Console.ReadLine());
d = decimal.Parse(Console.ReadLine());
Ler valor tipo lógicoleia(b)b = bool.Parse(Console.ReadLine());
Ler valor tipo textoleia(s)s = char.Parse(Console.ReadLine());
s = Console.ReadLine();
Escreverescreva(...)Console.Write(...);
Escrever, pulando linhaescreval(...)Console.WriteLine(...);
Escrever com parâmetrosescreva(..., a, ..., b, ...)Console.Write("...{0}...{1}...", a, b, …);
Para saber mais opções de formatação, consulte a documentação do C#.
Escrever com parâmetros, pulando linhaescreval(..., a, ..., b, ...)Console.WriteLine("...{0}...{1}...", a, b, …);
Para saber mais opções de formatação, consulte a documentação do C#.
Limpar telalimpatelaConsole.Clear();
Operação de atribuição (recebe)a <- ba = b;
Operação de adiçãoa + ba + b
Operação de subtraçãoa - ba - b
Operação de multiplicaçãoa * ba * b
Operação de divisãoa / ba / b
Operação de divisão inteiraa \ ba / b
(sendo a e b inteiros)
Operação de resto da divisãoa % b
a mod b
a % b
Operação de potenciaçãoa ^ bMath.Pow(a, b)
Operação de raiz quadradaRaizQ(a)Math.Sqrt(a)
Operação de concatenação"texto" + "texto"
"texto" + a
a + "texto"
"texto" + "texto"
"texto" + a
a + "texto"
Operação de acesso a um valor do vetorv[índice da linha]v[índice da linha]
(índice começa em 0 e termina em tamanho - 1)
Operação de acesso a um valor da matrizm[índice da linha, índice da coluna]m[índice da linha, índice da coluna]
(índices começam em 0 e terminam em tamanho - 1)
Operação de acesso ao tamanho do vetor(não tem operador específico)v.Length
Operação de acesso ao tamanho da matriz(não tem operador específico)m.Length
Operação de acesso à quantidade de dimensões da matriz(não tem operador específico)m.Rank
Operação de acesso ao tamanho das dimensões da matriz(não tem operador específico)m.GetLength(índice da dimensão)
(índices começam em 0 e terminam em tamanho - 1)
Operação menora < ba < b
Operação menor ou iguala <= ba <= b
Operação maiora > ba > b
Operação maior ou iguala >= ba >= b
Operação iguala = ba == b
Operação diferentea <> ba != b
Operação ea e ba && b
Operação oua ou ba || b
Operação ou-exclusivoa xou b(não tem operador específico)
Operação de negaçãonao a!a
Operação bit-a-bit e(não tem operador específico)a & b
Operação bit-a-bit ou(não tem operador específico)a | b
Operação bit-a-bit ou-exclusivo(não tem operador específico)a ^ b
Operação bit-a-bit de negação(não tem operador específico)~a
Operação de incremento(não tem operador específico,
mas pode ser feito com a <- a + 1)
a++
++a
Operação de decremento(não tem operador específico,
mas pode ser feito com a <- a - 1)
a--
--a
Operação com atribuição(não tem operador específico)a op= b
(é o mesmo que a = a op b)
Comando se-entãose condição entao
    ...
fimse
if (condição) {
    ...
}
Comando se-então-senãose condição entao
    ...
senao
    ...
fimse
if (condição) {
    ...
} else {
    ...
}
Comando se-então-senão encadeadosse condição1 entao
    ...
senao
    se condição2 entao
        ...
    senao
        ...
    fimse
fimse
if (condição1) {
    ...
} else {
    if (condição2) {
        ...
    } else {
        ...
    }
}
Comando se-então-senão encadeados
(versão melhorada do C#)
se condição1 entao
    ...
senao
    se condição2 entao
        ...
    senao
        ...
    fimse
fimse
if (condição1) {
    ...
} else if (condição2) {
    ...

} else {
    ...

}
Comando escolha-casoescolha variável
    caso valor1
        ...

    caso valor2, valor3

        ...

    outrocaso
        ...

fimescolha
switch (variável) {
    case valor1:
        ...
        break;
    case valor2:
    case valor3:
        ...
        break;
    default:
        ...
        break;
}
Comando enquanto-façaenquanto condição faca
    ...
fimenquanto
while (condição) {
    ...
}
Comando parapara variável de valor1 ate valorN passo P faca
    ...
fimpara
for (variável = valor1; variável <= valorN; variável += P) {
    ...
}
Comando repita-até
(termina com condição verdadeira)
repita
    ...
ate condição
(não tem comando específico)
Comando faça-enquanto
(termina com condição falsa)
(não tem comando específico)do {
    ...
} while (condição);
Comando de interrupçãointerrompabreak;
Comando de próxima iteração(não tem comando específico)continue;
Criar procedimentoprocedimento nome(parâmetro: tipo; ...)
var
    ...
inicio
    ...
fimprocedimento
static void nome(tipo parâmetro, ...) {



    ...
}
Criar funçãofuncao nome(parâmetro: tipo; ...): tipo
var
    ...
inicio
    ...
retorne valor
fimfuncao
static tipo nome(tipo parâmetro, ...) {



    ...
    return valor;
}
Chamar procedimentonome(valor, ...)nome(valor, ...);
Chamar funçãoa <- nome(valor, ...)a = nome(valor, ...);

Se você gostou do post, tem alguma dúvida ou encontrou algum erro, por favor, deixe uma mensagem! Seu feedback é muito importante!