From 4412d022b2e5218c1046130cd9b51416e04b9663 Mon Sep 17 00:00:00 2001 From: kno Date: Tue, 12 Jul 2016 07:20:54 +0200 Subject: [PATCH] Done --- cachematrix.R | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/cachematrix.R b/cachematrix.R index a50be65aa44..332da4d5c61 100644 --- a/cachematrix.R +++ b/cachematrix.R @@ -1,15 +1,33 @@ -## Put comments here that give an overall description of what your -## functions do -## Write a short comment describing this function +#These functions compute and store in cache the inverse of a inversible matrix + +## Cache a matrix inverse like in assigment text makeCacheMatrix <- function(x = matrix()) { + i <- NULL + set <- function(y) { + x <<- y + i <<- NULL + } + get <- function() x + setinverse <- function(inverse) i <<- inverse + getinverse <- function() i + list(set=set, get=get, setinverse=setinverse, getinverse=getinverse) } -## Write a short comment describing this function +## Solves a matrix inverse using cache if available like in assigment text cacheSolve <- function(x, ...) { - ## Return a matrix that is the inverse of 'x' + i <- x$getinverse() + if(!is.null(i)) { + message("getting cached data.") + return(i) + } + data <- x$get() + i <- solve(data) + x$setinverse(i) + i + }