Hi @John_Okoye,
That’s correct… although cost-efficiency is obviously relative, and depends on other factors such as how many times this particular transcation needs to be executed etc. The difference in practice may turn out to be immaterial (i.e. trivial) and so without further information, we can only really say at this stage that it’s more expensive than other solutions.
These concepts, and more specifically the terminology and the liberal way in which it can be used sometimes, do take a while to truly “click”. I conceptualise things as follows:
Passing (but not parsing) is what we do with values when we call/execute a function. When a function is called/executed, both in Solidity and JavaScript, we can pass values into that function by including them as parameters within the parentheses placed after the function name/identifier in the function header. I guess you could see passing as being synonymous with inputting because these values are effectively the inputs into the function, as opposed to the outputs which are returned by the function. A value can also be passed into a function by reference to the variable it has been assigned to, and so, here, you could say that you are passing a variable, the advantage being that, whatever value that variable holds when the function is executed will be passed into the function.
Setting variables is when we reassign their value (or assign a value when the variable was originally declared as undefined
. This can be done by a straightforward reassignment e.g.
// JavaScript
let x = 10;
x = 20;
Or it can be done within a function (called a setter) specifically designed for this purpose, and which adds more “control management” to the reassignment (or setting) operation.
Likewise, we can have functions called getters, specifically designed to retrieve the values currently assigned to (or held by) certain variables, and also to provide some kind of added “control management”.
I’m not really sure about what you’re referring to with the term copying. I haven’t come across that as a specific term describing a specific type of programming operation. Maybe someone else can chip in here…
I guess you could say that in the following example…
// JavaScript
let x = 10;
let y = x;
…the value 10 has been copied from variable x to variable y… but I’m clutching at straws to be honest 
Anyway, I hope I’ve helped to add a bit more clarity to the mystical arts of passing and setting

By the way, please don’t post screen shots of your code, because anyone who wants to run it or check it, can’t, because they can’t copy and paste it into their text editor. Also it’s much clearer and easier for people to see and read code which has been copied and pasted into your post and appropriately formatted. Thanks 