From 298d2d9587113c23677a0e1927bf2dbf7e61c755 Mon Sep 17 00:00:00 2001 From: madhumitharameswaran-maker Date: Tue, 7 Oct 2025 20:03:26 +0530 Subject: [PATCH 1/2] cachematrix.R programming assignment 2 lexical scoping --- cachematrix.R | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) diff --git a/cachematrix.R b/cachematrix.R index a50be65aa4..7b799c9a3d 100644 --- a/cachematrix.R +++ b/cachematrix.R @@ -1,15 +1,25 @@ -## Put comments here that give an overall description of what your -## functions do - -## Write a short comment describing this function - 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 - 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 } From 4bea2748f0b3abcee095186252131c551fb9bacb Mon Sep 17 00:00:00 2001 From: madhumitharameswaran-maker Date: Tue, 7 Oct 2025 22:23:00 +0530 Subject: [PATCH 2/2] Add files via upload --- cachematrix.R | 32 +++++++++++--------------------- 1 file changed, 11 insertions(+), 21 deletions(-) diff --git a/cachematrix.R b/cachematrix.R index 7b799c9a3d..a50be65aa4 100644 --- a/cachematrix.R +++ b/cachematrix.R @@ -1,25 +1,15 @@ +## Put comments here that give an overall description of what your +## functions do + +## Write a short comment describing this function + 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 + cacheSolve <- function(x, ...) { - i <- x$getinverse() - if (!is.null(i)) { - message("getting cached data") - return(i) - } - data <- x$get() - i <- solve(data, ...) - x$setinverse(i) - i + ## Return a matrix that is the inverse of 'x' }