Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function CheckType ($dato, [type]$tipo){
- switch ($tipo){
- int {
- if ($dato -as $tipo){
- return [int]$dato
- }
- else{
- write-host "Menos luces que una patera"
- $dato = read-host "Ahora que sea un número porfa "
- CheckType $dato int
- }
- }
- string {
- if ($dato -as [int]){
- write-host "Menos luces que una patera"
- $dato = read-host "Ahora que sea texto porfa "
- CheckType $dato string
- }
- else{
- return [string]$dato
- }
- }
- }
- }
- function CalcularRetencion ($empleado){
- if ($empleado -gt 50000){
- $retencion = $empleado * 0.2
- }
- else{
- $retencion = $empleado * 0.1
- }
- return $retencion
- }
- function Categoria ($empleado){
- if ($emplado -lt 40000) {
- $cat ='BAJA'
- }
- elseif ($emplado -gt 40000 -and $empleado -lt 70000) {
- $cat = 'MEDIA'
- }
- else {
- $cat = 'ALTA'
- }
- return $cat
- }
- function CargarEmpleado{
- $seguir = $true
- while ($seguir){
- $nombre = (CheckType -dato (read-host "Nombre del empleado ") -tipo string).ToUpper()
- $edad = CheckType -dato (read-host "Edad del empleado ") -tipo int
- $sueldo = CheckType -dato (read-host "Sueldo del empleado ") -tipo int
- $retencion = CalcularRetencion -empleado $sueldo
- $categoria = Categoria -empleado $sueldo
- $empleados = [ordered]@{
- NOMBRE = $nombre;
- "EDAD $nombre" = $edad;
- "SUELDO $nombre" = $sueldo;
- "RETENCION $nombre" = $retencion;
- "CATEGORIA $nombre" = "$categoria";
- "--------" = ''
- }
- [array]$todos += $empleados
- if ((Read-Host "Quieres añadir otro empleado? (S/N) ") -eq 'N'){
- $seguir = $false
- }
- else{
- }
- }
- return $todos
- }
- write-output (CargarEmpleado)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement