Advertisement
daniel199410

Tarea 1

Feb 14th, 2015
286
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
R 1.75 KB | None | 0 0
  1. #Tarea 1
  2. #Materia: Teoría de la computación y la compilación
  3. #Autor: Daniel Cataño Restrepo
  4.  
  5. isdigit <- function(x){
  6.   if(nchar(x) == 1){ #Se revisa que la longitud de la cadena sea 1
  7.     for(i in 0:9)
  8.       if(x == as.character(i))
  9.         return(TRUE)
  10.     return(FALSE)
  11.   }else{
  12.     return(FALSE)
  13.   }  
  14. }
  15.  
  16. trim <- function(x){
  17.   for(i in 1:length(x)){
  18.     contador <- 0
  19.     for(j in 1:nchar(x[i])){
  20.       if(substr(x[i], j, j) == " ")
  21.         contador <- contador + 1
  22.       else{
  23.         x[i] <- substr(x[i], contador + 1, nchar(x[i]))
  24.         break
  25.       }
  26.     }
  27.     contador <- 0
  28.     for(j in nchar(x[i]):1){
  29.       if(substr(x[i], j, j) == " ")
  30.         contador <- contador + 1
  31.       else{
  32.         x[i] <- substr(x[i], 1, nchar(x[i])-contador)
  33.         break
  34.       }
  35.     }
  36.   }
  37.   return(x)
  38. }
  39.  
  40. checkstr <- function(x, g){
  41.   longitud <- length(grep(x,g,ignore.case=TRUE,value=TRUE))
  42.   if(longitud > 0)
  43.     return(TRUE)
  44.   return(FALSE)
  45. }
  46.  
  47. print.tree <- function(x){
  48.   tab <- function(x){
  49.     cadena <- " "
  50.     for(i in 1:x){
  51.       cadena <- paste(cadena, "", collapse=NULL)
  52.     }
  53.     return(cadena)
  54.   }
  55.   contador <- 0
  56.   cad <- ""
  57.   cat("\t","nodo","\t","|","\t","arbol","\n", sep = "")
  58.   for(i in 1:length(x$node.name)){
  59.     cat("\t","\t","\t","\t",i,"\t","|","\t",cad,as.character(x$node.name[i]),"\n", sep = "")  
  60.     if(as.character(x$node.name[i]) == "*" | as.character(x$node.name[i]) == "/" |as.character(x$node.name[i]) == "-" |as.character(x$node.name[i]) == "+"){
  61.       contador <- contador + 1
  62.       cad <- tab(contador)
  63.     }
  64.   }
  65. }
  66.  
  67. #Fuentes:
  68. #- http://www.ub.edu/stat/docencia/Cursos-R/Radvanced/materials/CadenasenR.pdf
  69. #- http://stackoverflow.com/questions/5671719/case-insensitive-search-of-a-list-in-r
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement