Вот так выглядит вся(!)3я лаба по Ждановой (чмо)...Работает так же быстро как и на С. И присутствует всего один цикл!(и то только потому, что промежуточные значения печатать надо).Никакой глупой работы с циклами! Супер!!
options(digits = 17)
A <- as.matrix(read.table(file="first.csv", header=FALSE, sep=" "))
dimnames(A) <- NULL
C<-A
e <- 0.0004
b1 <- b <- c(10.48, 6.47, 2.38, 4.21)
findC <- function(i,j){
if(i==j) 0
else -A[i,j]/A[i,i]
}
C <- outer(seq(4), seq(4), FUN=Vectorize(findC))
findD <- function(j){b[j]/A[j,j]}
b <- sapply(seq(4), FUN=findD)
x <- rep(0, times = nrow(A) )
x1 <- rep(15, times =nrow(A))
while(max(abs(x-x1))>e){
x1 <- x
result <- function(i){ C[i,]%*%x+ b[i]}
x <- sapply(seq(4), FUN=result)
print(x)
}
solve(A, b1)-x