|
I'm not trying to learn C++
|
|
|
|
|
Never the less, you are using a computer, and what I just said there is how a computer works. Understanding what I said there will help you understand C#, which takes what I said and wraps a complicated memory manager around all that. But at the low levels, C# is creating pointers and memory blocks and sticking values in there, and when you say "int x[5];" that is exactly what is happening in C#.
Look at my first paragraph - C# is insulating you from the details which could help you understand arrays.
|
|
|
|
|
|
if it'll make you feel any better, here is what I'm supposed to bring to the screen:
Grade=Pass Score=55%
Grade=Good Score=65%
Grade=VeryGood Score=75%
Grade=Distinct Score=85%
Drill 4-3
Display the contents of the two-dimensional array called “grades”
that was discussed in this section. Make sure you get the following
result:
I'm not taking any formal classes, but… This is a Drill/Exercise from an e-book I'm reading on C#
I will post my code and ask you fine people for input/feedback about how I did it and maybe how I could have done better…
|
|
|
|
|
Oh, cool
Please post the link to the e-book you are using, so we can see the context a little better.
My example wasn't about teaching C++, it was about understanding what the computer does when you put certain instructions in C# and the low-level differences between the types of arrays. C# hides those details from you, so you can be more productive, but it reduces understanding. Understanding those low-level concepts can prevent you from creating performance and memory problems in your programs.
Ever wonder why Windows takes twice as much memory to do half as much stuff as Linux? This is why.
EDIT: This is one of the best questions we've got in a long time. I get tired of the "plz snd codez" questions.
modified 20-May-13 17:26pm.
|
|
|
|
|
|
WidmarkRob wrote: I'm not a script kiddie trying to find an easy way out…
Yeah I respect that. It's kinda why I thought you might be receptive to the low-level explanation of what's going on with this. Many people just want to get their assignment done and don't care how well it comes out, and those people create a lot of problems in the industry. I do my best to try to not create any more folks like that, who can produce miles and miles of bad code, that works. My production environment is acting very funny today because of code like that.
|
|
|
|
|
the book I'm reading is very similar to this book:
http://www.charlespetzold.com/dotnet/
they are both nicely detailed and start out very similar, talking about the .net framework and a little history behind C#… How it took some of the concepts C and C++…
I'm going to read that other book, when I'm done reading the book that I paid for…
|
|
|
|
|
Everything he writes is good. I lived that history and it is fascinating. C# (and Java and other "managed" languages) solves a lot of the problems that C++ had where simple coding mistakes could lead to memory leaks and security problems. In C#, a lot of those coding mistakes just won't compile... like this...
if (x = y) {
}
In C++ that was an "assignment and test" all in one line. It assigns the value of y to x and casts the whole expression to boolean, so if y was non-zero, the branch would execute. We almost never did that on purpose, we usually just forgot to say ==(the equality operator) instead of =(the assignment operator). You can still make this mistake in Javascript.
In C# we have to write it this way...
x = y;
if (x != 0) {
}
It forces us to do the assignment and the test separately. This avoids the problem that often we would mistakenly write the first example, when what we meant was a simple test for equality. There's nothing illegal about doing assignment and testing in the same statement, but the C# compiler warns us that it's probably a mistake - you can force it to compile if you really want.
What I'm saying is C# (and Java) is mostly a reaction to C++ and all of the horrible things it would let you do! So, that's why it's helpful to see an example from old languages periodically and an explanation of why we don't do it that way any more, or why we do. In C#, arrays are managed objects, which is a step up from blocks of memory, but that managed object is just insulating you from all the mistakes that were easy to make when you were closer to the block of memory, which is still there, buried beneath objects. I would expect Petzold to cover that - how C++ was dangerous with memory, how we learned all the pitfalls, and built in safeguards right in the language.
|
|
|
|
|
the book I'm reading now sprinkles in comparisons to C++ every now and then… I got in maybe 20 pages into that other book before I realized they both started off pretty similar… That's when I stopped reading it.
There were a few things mentioned in Petzold's e-book that wasn't covered in the book I'm reading now, which is why am going to eventually read that book when I'm done with my current book.
|
|
|
|
|
|
how to use counting function in c# for counting values
|
|
|
|
|
There is no specialized counter-function. One declares a variable, and increases it's value when required.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Do you mean the IList<T>.Count()[^] method? If so, instantiate a list of values, add some values to it, and call Count on it.
|
|
|
|
|
If you are going to get help here, you must first learn how to get help for yourself. Look at the questions you have just posted.
Would you be able to answer them if you knew the answer. No is the short reply.
You need to specify what you need. In this case what are you counting, or why do you need to count something. There is no "counting function" in c#.
The other thing is, you need to explain what the problem is. You will get more help if you show effort on your side. Without this (especially with newer members) everyone assumes you just want your work done for you and won't help - we aren't getting paid.
“Education is not the piling on of learning, information, data, facts, skills, or abilities - that's training or instruction - but is rather making visible what is hidden as a seed” “One of the greatest problems of our time is that many are schooled but few are educated”
Sir Thomas More (1478 – 1535)
|
|
|
|
|
I strongly suggest you work through .NET Book Zero[^], by Charlse Petzold. It will answer most of the questions you have already posted, and more that you haven't.
Use the best guess
|
|
|
|
|
|
You could implement a counting function in many ways -
1) Run a loop (for-else, while etc)
2) Call a function recursively
3) Use LINQ
|
|
|
|
|
how to print
*******
*****
***
throug nested loof
in c#
|
|
|
|
|
By writing some code. This is a very simple classroom assignment that you should be able to do for yourself. Think about the steps you need to take:
- How many stars do you need to print on each line?
- How can you use a for loop to change that number by a fixed amount?
- What criteria do you need to test in order to decide when the loop is complete?
If necessary, write all the details on paper before you try turning them into code.
Use the best guess
|
|
|
|
|
Are there no lab supervisors to ask. You should ask those, it's a good way of introducing yourself, you'll get more help and understand more.
“Education is not the piling on of learning, information, data, facts, skills, or abilities - that's training or instruction - but is rather making visible what is hidden as a seed” “One of the greatest problems of our time is that many are schooled but few are educated”
Sir Thomas More (1478 – 1535)
|
|
|
|
|
Try something please, and then post your code and questions here.
|
|
|
|
|
I have this assignment:
Develop a C# console application that implements three arrays; a string array initialized with exactly the following five data items { "Widget 15.50", "Thingy 50.99", "Ratchet25.00", "Clanger115.49", "Fracker75.25" }, a string array to hold the five part names to be parsed from the previously detailed string array, an array of five double value prices to be parsed from the previously mentioned array.
Create a void method that will accept as arguments the two arrays of strings and the array of doubles when called from Main. In the method you will access the five members of the first string array mentioned above and you will parse out the name portion of each string element (first 7 bytes), assigning the string value to the corresponding element in the array of names. In the method you will also parse out the numeric portion of each string and assign it to the corresponding element of the price array. The parsing should be done using the string method SubString.
In Main, after calling the parsing method you will display the elements of both the array of names and the array of prices side-by-side (do not display the array from which you parsed the data items).
The output should look something like this:
Widget $15.50
Thingy $50.99
Ratchet $25.00
Clanger $115.49
Fracker $75.25
Press any key to continue . . .
This is what I have so far and I have an error and I don't know what is wrong:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string[] combo = { "Widget 15.50", "Thingy 50.99", "Ratchet25.00", "Clanger115.49", "Fracker75.25" };
string name = Convert.ToChar(combo[].Substring(0, 7));
double price = Convert.ToInt32(combo[].Substring(7, 12));;
parse(ref combo, ref name, ref price);
}
static void parse(ref string[] combo, ref string name, ref double price)
{
for (int x = 0; x < combo.Length; x++)
{
Console.Write(name + price + "\n");
}
}
}
}
It gives me a syntax error for lines for 14 and 15.
modified 19-May-13 15:23pm.
|
|
|
|
|
Please don't repost the same question; edit your original.
Use the best guess
|
|
|
|
|
It isn't the same question.
|
|
|
|