MAC113 - Introdução à Computação

Administração - 1o. Semestre de 2020


Aula 09: Decomposição de problema complexa


  • A saida:
                   Prod   EmEstoque   EstoqueMin  preçoUnit   Pedido   Custo
    	      vinho         132          150         85       18    1530
    	      wisky          43           50        160        7    1120
                cachaça          82           50         45        0       0
                   sake          37           40        120        3     360
                  vodka          52           50         60        0       0
                    rum          76           80         55        4     220
                  licor          28           15         70	       0       0
              

  • Se fizer:
    1. arquivo tentativa1.r:
                  
      	    reporEstoque <- function(x){
                    if(x[, 2] < x[, 3]){
                      x[, 5] <- x[, 3] - x[, 2]
      	      }else{
                      x[, 5] <- 0
                    }
                    return(x)
      	    }			
      	   

    2. arquivo tentativa2.r:
                 dirTrab <- "..."
                  setwd(dirTrab)
                  pl <- read.csv("estoque.csv")
                  source("../tentativa1.r")	  
      
      	    pl[,'Pedido'] <- NA
      	    pl <-reporEstoque(pl)
                  print(pl)
      	

    3. A saida:
                     Prod   EmEstoque   EstoqueMin  preçoUnit   Pedido   
      	      vinho         132          150         85       18    
      	      wisky          43           50        160        7   
                  cachaça          82           50         45      -32       
                     sake          37           40        120        3     
                    vodka          52           50         60       -2      
                      rum          76           80         55        4     
                    licor          28           15         70	     -13      
                

    4. O problema:A função tratou as colunas não linha por linha mas deu tratamento uniforme às colunas do seguite jeito:
      1. Na primeira linha ( de vinho) "(x[, 2] < x[, 3])" era TRUE então fez "x[, 5] <- x[, 3] - x[, 2]"
      2. E aplicou o mesmo tratamento para todas as linhas.
      3. E onde deve aparecer 0 (zero), aparece 1 número negativo.