# Session one: check-in | Fund.logica **nome** Kevin Ribeiro de Andrade **número** 27 **turma** INFO A ## Mapa mental ![](https://i.imgur.com/AmBZKba.png) ## Tipo composto O tipo composto é um tipo de "função" que pode ter um ou mais valores dentro dele, você pode usá-la pra quando você for criar uma função que precise retornar mais de um valor específico ex: ```csharp= using System; // Pra que retornar em string? Crazy public class endereco { public string nome; public string CEP; } public string valid_CEP(endereco end) { long verific = end.CEP.Length; bool verific2 = end.CEP.Contains("-"); bool comp = verific == 9; bool comp2 = comp == true || verific2 == false; string conv = Convert.ToString(comp2); return conv; } endereco valid = new endereco(); valid.nome = "Rin tohsaka"; valid.CEP = "79036-160"; string x = valid_CEP(valid); x ``` nesse exemplo apenas o **public class** é o que estou querendo mostrar. ## Expressões - número Diferente das variáveis de textos as funções de números não podem ser emendadas mas você pode fazer diversas expressões dentro de um só variável como: ```csharp= double x = Math.Sqrt(Math.Pow(3, 2) / math.Celling(Math.pow(3.7, 6))); ``` Ai eu fiz varias expressões dentro de uma só função e variável. ## Expressões - texto As funções de texto podem ser emendadas uma nas outras usando o ".", todas funções juntas retornaram apenas um valor Ex: ```csharp= string v = "uepa"; long b = v.Replace("u", "4").Substring("3", "1").Length; ``` Aí está retornando um número inteiro pois não retornei nenhum texto por que a última função executada foi o length e ele precisa retornar um número inteiro. Uma boa observação aqui é que se uma função que antecede outra não for compatível, não dará certo ex: ```csharp= string v = "uepa"; string b = v.Replace("u", "4").Length.Substring("2", "1"); ``` essa função não dará certo pois o resultado do length é um número e a função substring só funcionará com texto.