|
Bishwajit Nepali wrote: Please help me I have few time only One can't build a castle in a day. You're lucky though; we have an article[^] on images and distances.
For an angle, one would need a reference-point.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Thnx but I did using the reference point .Thanks for ur suppoort
|
|
|
|
|
The concept that you are talking about is like a program that can't be developed within a day.
|
|
|
|
|
The way to solve this is to use some maths, and it requires you knowing how high off the ground the web camera is. Once you know this, you need to measure the angle to the base of the object to work out the distance. From this, it's a fairly simple set of calculations to work out the height (as long as you know the angle to the top of the object).
|
|
|
|
|
thank you every body for your suggestions. I am very greatful to you all
|
|
|
|
|
Drill 4-4
Rewrite the program created for Drill 4-2 to read the number and the
power as program arguments.
This first set of code is what I wrote for Drill 4-2.
The second set of code is what I'm attempting to write.
I've read all the articles at MSDN and even watched a few YouTube videos to try to find out where I'm going wrong.
I know it's probably something very elementary, but… My blue-collar butt is having a little hard time trying to figure out this white color stuff.
Instead of actually writing and giving me the code, give me written instructions… So I could practice with written instructions as well.
Don't give me a link to another article, I've read as many as I could in the past few days trying to figure it out.
I'm just not quite thinking like a programmer yet. I need some practice in taking the written instructions.
I imagine the book I'm reading will eventually talk about the "public, void, private, partial, static" keyword sooner or later.
I'm not taking any formal classes, I'm trying to learn this on my own time. That's why I'm asking for written instructions so I can get a better grasp on how to use this language in the right context.
I have two blue squiggly lines in my main method for the integer variables.
Error message:
use of unassigned local variable 'num' and 'num1'
using System;
namespace CalculatetothePowerof
{
class Program
{
static void Main2()
{
int valOne = AcceptValue("Enter your first number:");
int valTwo = AcceptValue("\nEnter your second number:");
Console.WriteLine(Math.Pow(valOne, valTwo));
Console.Read();
}
static int AcceptValue(string message)
{
string valueOne;
int IntOne;
string YesNo;
do
{
Console.WriteLine(message);
valueOne = Console.ReadLine();
IntOne = Convert.ToInt32(valueOne);
Console.WriteLine("Are you sure you want to use that number?\nPress lowercase y or n, to continue.");
YesNo = Console.ReadLine();
if (YesNo == "y")
{
break;
}
Console.Clear();
} while (YesNo != "y");
return IntOne;
}
}
}
using System;
using System.Text;
namespace MainMethodAcceptTwoArgValues
{
class Program
{
static void Main()
{
int num;
int num1;
UserInput(num);
UserInput(num1);
Console.WriteLine(Math.Pow(num, num1));
}
static void UserInput(int input)
{
string userinput;
string yes_no;
do
{
Console.WriteLine("Enter your number: ");
userinput = Console.ReadLine();
Console.WriteLine("Correct numbers?\nPress y/n");
yes_no = Console.ReadLine();
if (yes_no == "y")
{
input = Convert.ToInt32(userinput);
break;
}
Console.Clear();
} while (yes_no != "y");
}
}
}
|
|
|
|
|
WidmarkRob wrote: I'm not taking any formal classes, I'm trying to learn this on my own time.
Stop doing that - it's a pretty poor way to do things. If you are following a book, or other training course, then fine, but if you are just trying to pick it up "randomly" as you go, then stop right now! Your will miss too much stuff, which can save you a lot of time and heartache later!
Having said that, your error is pretty simple, and the error message is pretty explicit:
use of unassigned local variable 'num' and 'num1'
What that means is that when you pass the value of the two variables to your UserInput method, you have not assigned them any value, so there is no value to send. Since at compile time it doesn't know anything about the UserInput method it complains, because the way you have defined things it has to assume that UserInput is expecting to use the value, not set it.
There are two ways to solve the problem: change the UserInput parameter to an out paramater - in which case no value is carried in, only out of the method:
static void Main()
{
int num;
int num1;
UserInput(out num);
UserInput(out num1);
Console.WriteLine(Math.Pow(num, num1));
}
static void UserInput(out int input)
{
... Because an out parameter does not copy any data from the calling method, but modifies the variable when it returns. But then the compiler will very probably complain that input is not given a value in all code paths.
The better solution is to not pass anything in - return a value instead:
static int UserInput()
{ But I don't think what you are doing is what the exercise calls for. I'm not quite sure what your instructions mean, but I suspect that what they should be doing is not reading values from the user at all - "program arguements" means something very different and specific here.
Where did you get the exercise? What was it related to?
The universe is composed of electrons, neutrons, protons and......morons. (ThePhantomUpvoter)
|
|
|
|
|
OriginalGriff wrote: Stop doing that - it's a pretty poor way to do things. If you are following a book, or other training course, then fine, but if you are just trying to pick it up "randomly" as you go, then stop right now! Your will miss too much stuff, which can save you a lot of time and heartache later!
maybe I should have said semi-informal/self-paced study…http://www.brainmeasures.com/courses/online/626/c-sharp-certification.aspx
it was a little confusing at first, but… With the help of Richard, I was able to figure it out and understand what the book was asking of me to do…
thanks for your help as well, it helped clarify what I could possibly do in the future using different keywords.
Thank you
|
|
|
|
|
You're more than welcome for any help I gave!
The universe is composed of electrons, neutrons, protons and......morons. (ThePhantomUpvoter)
|
|
|
|
|
You need to use the argument array that is provided by the system, as shown below:
static void Main(string[] args)
{
int number = Convert.ToInt32(args[0]);
int power = Convert.ToInt32(args[1]);
Console.WriteLine(Math.Pow(number, power));
}
You would then call the program in a command window by something like:
programname 23 3
Use the best guess
|
|
|
|
|
Both you and the book lost me… You both are saying the same thing, but…
Here is the whole chapter, so you can see what they're talking about and maybe why I'm lost.
4-8 Using Program Arguments
One possible form of the Main method is:
static void Main(string[] args)
Using this form allows the C# program to accept as arguments a sequence
of strings. The arguments are received as string array elements named
args[0], args[1], and so forth. The string arguments can also be converted
to other data types, as explained in Chapter 3.
In the following example, the program receives two arguments at run
time. The program converts the first one to a long number and the second
to a double number, and then displays them and their product.
Example 4-11
using System;
public class ParseClass
{
static void Main(string[] args)
{
long myLong = Convert.ToInt64(args[0]);
double myDouble = Convert.ToDouble(args[1]);
double result = myLong * myDouble;
Console.WriteLine("Your long number is: {0}", myLong);
Console.WriteLine("Your double number is: {0}", myDouble);
Console.WriteLine("The result of multiplication is: {0}",
result);
}
}
Sample Run:
Assuming that the program is called “example,” enter the following at the
command line:
> example 2 1.1
The output should be:
Your long number is: 2
Your double number is: 1.1
The result of multiplication is: 2.2
Drill 4-4
Rewrite the program created for Drill 4-2 to read the number and the
power as program arguments. For example, if the program is called
“power,” you can invoke it as shown in these sample runs:
Sample Run 1:
>power 4 2
The number 4 raised to the power 2 = 16
Sample Run 2:
>power 4 3
The number 4 raised to the power 3 = 64
Here is my code, it's basically the same as yours… Just the names of the variables are changed.
using System;
namespace PracticePassingParameters
{
class Program
{
static void Main(string[] args)
{
int FN = Convert.ToInt32(args[0]);
int SN = Convert.ToInt32(args[1]);
Console.Write(Math.Pow(FN, SN));
Console.Read();
}
}
}
When I run it in the debugger, "index was outside the bounds of the array"… WTH
|
|
|
|
|
WidmarkRob wrote: When I run it in the debugger You need to set the program arguments in your properties, for the debugger to correctly run the program. In Visual Studio, select Properies in Solution Explorer, and click on Debug in the left hand selection list of the Properties page. Then put your values into the textbox labelled "Command line arguments", separated by spaces.
Use the best guess
|
|
|
|
|
|
WidmarkRob wrote: So, I don't have to turn this into an executable file before calling it from the command line? Yes you do, that's what building the project is all about.
WidmarkRob wrote: From the command line, I would have to type in "PracticingPassingParameters"?
Then I could just enter my two numbers and get the result? See my anser to your other question.
WidmarkRob wrote: all I really needed was four lines of code in the first place? No, the book is trying to teach you how to write applications, by using different features, even though some of it seems like overkill.
WidmarkRob wrote: even when I publish this simple little program and click on the executable, it still telling me I have an out of range exception You need to show us exactly what you have typed at the command line.
Use the best guess
|
|
|
|
|
Richard MacCutchan wrote: You need to show us exactly what you have typed at the command line.
my blue-collar mind is starting to get a little better, like an idiot… When I published and created a regular executable file, I went and clicked on the executable instead of calling it from the commandline…
When I called up from the commandline, it works just like it was supposed to…
|
|
|
|
|
WidmarkRob wrote: my blue-collar mind Please don't make the mistake of believing that we are all geniuses. Some (Pete O'Hanlon, Sacha Barber, OriginalGriff, and others) definitely are, but most of us are just slightly ahead of you in experience. That is to say, we already made these mistakes and learned how to fix them.
Use the best guess
|
|
|
|
|
I fingered it out, was a pain in the butt… Had to enter the full file path name all the way to the bin folder.
Okay, now that I figured that part out… How do I turn this into an executable file and have it run the same way as I did calling it in the bin folder from the command line?
|
|
|
|
|
WidmarkRob wrote: How do I turn this into an executable file It's already an executable; that's the only type that you can run (yes I know about the exceptions). You open a command window, navigate to the application's bin/Debug or bin/Release directory, and enter the executable's name followed by the relevant parameters, something like:
>cd "\My Documents\Visual Studio\Projects\mytest\bin\Debug"
>testprogram 23 5
When you debug your code, the debugger runs the executable program within a special environment that allows it to single step, and track variable values.
Use the best guess
|
|
|
|
|
I am using your drivedetector(Using Dolinay) to detect usb devices connected to PC. but I want to detect all the devices connected to my PC so that I can transfer data to my form in C#. what Can I do?
C# user
|
|
|
|
|
If you've got questions about a particular article, do to the forum at the bottom of that article.
This site is run by an entire community, volunteering their time, not a couple of people writing thousands of articles. The best person to ask about an article is the person who wrote it.
|
|
|
|
|
I am looking for a C# wrapper to make calls with Skype. I found 3 'Skype' related articles here on CP, and spent an hour Googling, but I can' seem to find a decent example of plaching a call with Skype.
My app will have the skype Id. When the icon is clicked, I want it to call using skype. How hard can this be??
Anyone have an example of this?
If it's not broken, fix it until it is
|
|
|
|
|
|
Have you looked at it?
If it's not broken, fix it until it is
|
|
|
|
|
Briefly, they have an ActiveX control that you can use to issue commands to the Skype system, or if you find one of the wrappers you may be able to roll your own. Tracer looks like it can help you understand the API calls and what is supported, so combining the two and a lot of trial and error it looks like you can interact with Skype via C#.
|
|
|
|
|
Yss I looked at these earlier, but I really didn't want to reinvent something if someone else already has done it.
Ya, Tracer looks promising. Guiess I'll start there.
Thanks
If it's not broken, fix it until it is
|
|
|
|
|