|
Thread Rules 1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution. 2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20) 3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible. 4. Use [code] tags to format code blocks. |
On February 20 2013 07:58 InRaged wrote: Thank you, delHospital. Should be char tmp[] instead;
darkness, If you can use strncat instead then instead of tmp variable you could do strncat(string, (char *)&c, 1); The casting is required in such case, cause your c is int and not char. Last argument tells strncat how much bytes to copy.
This will compile and won't give you a seg-fault, but will fail to work correctly when the hardware does not store the least significant bit in the first byte of the int.
|
You mean big-endian hardware, right? Zero-experience programming for this type of machines. Regular Int to char works as expected though, so it's only when working with pointers you have to keep that mind?
|
On February 20 2013 08:15 InRaged wrote: You mean big-endian hardware, right? Zero-experience programming for this type of machines. Regular Int to char works as expected though, so it's only when working with pointers you have to keep that mind?
You're giving something that expects a char* an int* and taking for granted the fact that it just happens to be stored in a way which will works in this particular case. You don't need to keep it in mind if you avoid casting pointers like this.
|
I've been thinking about creating a game aimed at children and young adults to help them with learning math. What is the fastest way to do this as a single player game and what is the fastest if I wanted to make it multiplayer?
|
On February 20 2013 07:58 InRaged wrote: Thank you, delHospital. Should be char tmp[];
darkness, If you can use strncat instead of strcat then instead of tmp variable you could do strncat(string, (char *)&c, 1); The casting is required in such case, cause your c is int and not char (but it isn't as portable, see Mstring's responce). Last argument tells strncat how much bytes to copy.
Also there is a bug in your algorithm. Check your if conditions to find it ;P
The bug is I had wrong condition to check for lower-case letters. There is 'a' and 'M'. Other than that, everything works. Thanks for help.
|
On February 20 2013 08:37 Mstring wrote:Show nested quote +On February 20 2013 08:15 InRaged wrote: You mean big-endian hardware, right? Zero-experience programming for this type of machines. Regular Int to char works as expected though, so it's only when working with pointers you have to keep that mind? You're giving something that expects a char* an int* and taking for granted the fact that it just happens to be stored in a way which will works in this particular case. You don't need to keep it in mind if you avoid casting pointers like this. No need to be condescending. I took it for granted, because it is granted that on x86 and on any other little-endian system it is stored in a way that will work. Big-endian systems are pretty exotic, so forgive me for forgetting about such details.
|
On February 20 2013 11:01 InRaged wrote:Show nested quote +On February 20 2013 08:37 Mstring wrote:On February 20 2013 08:15 InRaged wrote: You mean big-endian hardware, right? Zero-experience programming for this type of machines. Regular Int to char works as expected though, so it's only when working with pointers you have to keep that mind? You're giving something that expects a char* an int* and taking for granted the fact that it just happens to be stored in a way which will works in this particular case. You don't need to keep it in mind if you avoid casting pointers like this. No need to be condescending. I took it for granted, because it is granted that on x86 and on any other little-endian system it is stored in a way that will work. Big-endian systems are pretty exotic, so forgive me for forgetting about such details. I think you are seeing things in my comment which aren't there. I was simply being direct.
|
Can't go around thinking criticisms of your code are condescending, that'll prevent you from improving. If something is wrong and someone points it out, that's good for you, they're not trying to insult you or anything.
i can grammar
|
On February 20 2013 08:51 Emon_ wrote: I've been thinking about creating a game aimed at children and young adults to help them with learning math. What is the fastest way to do this as a single player game and what is the fastest if I wanted to make it multiplayer? Depends on how you plan to make the game. If you're just going for some interface with buttons and textboxes, you can go with pretty much anything, such as C# or Java. If you plan to have proper "graphics", you'll probably need SDL. While there are bindings for most languages, I think the easiest in that case would be to go with Python and Pygame (SDL.Net was last updated like 2-3 years ago, I don't know about Java SDL bindings).
Adding multiplayer is probably just as complex on Python as it is in C# or Java, you need to learn about sockets etc regardless.
|
Hey everyone. I'm just learning how to use visual basic and I'm stuck with making a program to find the average for best 3 out of 4 using a self made private sub that I call to using a button. Below are pictures of the form and source code.
Form Source Code
I thought this would work but when I run the program the calculations are off. I tested using 50/50/50/10 and the average comes out as 33.33~.
Anyone able to help me figure out the problem?
|
On February 20 2013 18:16 Pibacc wrote:Hey everyone. I'm just learning how to use visual basic and I'm stuck with making a program to find the average for best 3 out of 4 using a self made private sub that I call to using a button. Below are pictures of the form and source code. FormSource CodeI thought this would work but when I run the program the calculations are off. I tested using 50/50/50/10 and the average comes out as 33.33~. Anyone able to help me figure out the problem? You should be assigning dblLow, you're doing it the other way around. It should be dblLow = dblV4 instead of dblV4 = dblLow.
As it is right now, when you get to the actual calculation, dblLow is still unassigned and some of your dblV values has been set to the dblLow unassigned value (0 by default in VB). So the actual calculation in this case becomes (50 + 0 + 50 + 0 - 0) / 3
|
On February 20 2013 18:23 Tobberoth wrote:Show nested quote +On February 20 2013 18:16 Pibacc wrote:Hey everyone. I'm just learning how to use visual basic and I'm stuck with making a program to find the average for best 3 out of 4 using a self made private sub that I call to using a button. Below are pictures of the form and source code. FormSource CodeI thought this would work but when I run the program the calculations are off. I tested using 50/50/50/10 and the average comes out as 33.33~. Anyone able to help me figure out the problem? You should be assigning dblLow, you're doing it the other way around. It should be dblLow = dblV4 instead of dblV4 = dblLow. As it is right now, when you get to the actual calculation, dblLow is still unassigned and some of your dblV values has been set to the dblLow unassigned value (0 by default in VB). So the actual calculation in this case becomes (50 + 0 + 50 + 0 - 0) / 3
WOW I cannot believe I fucked that up for only half of them lol. After fixing the first if statement it works. Thank you very much!
|
On February 20 2013 08:51 Emon_ wrote: I've been thinking about creating a game aimed at children and young adults to help them with learning math. What is the fastest way to do this as a single player game and what is the fastest if I wanted to make it multiplayer?
The fastest way is to probably use a pre-existing engine such as Unity. All the difficult stuff is taken care of and you're just left with writing the game code and supplying the art. Of course you also have to learn how to use Unity, but there's plenty of tutorials around on the internets.
|
On February 20 2013 08:51 Emon_ wrote: I've been thinking about creating a game aimed at children and young adults to help them with learning math. What is the fastest way to do this as a single player game and what is the fastest if I wanted to make it multiplayer?
This is impossible to answer without knowing about you first; what programming experience do you already have? If you're already super experienced with a language, you'll make a game quickest in that language. If not, something like pygame will probably be quick (I've never used it but I hear good things)
If your only goal is making it quick, there are tools like Game Maker that can make games/prototypes really quickly, sometimes without even needing code. People will shit on things like Game Maker but really if you want speed you won't beat it with a traditional programming language for a small quick game. I think Game Maker can do both single and multiplayer, but don't quote me on that.
(Personally, I would use Java+LibGDX because that's what I'm comfortable with. The only other language I'm proficient with is C++ and C++ is a bit of a pain for multiplayer.)
|
Question about C:
How can I create n strings using heap?
E.g.
#define STRSIZE 50 input n = 5
I was thinking about usng a loop, but I guess this wouldn't work because of 'i':
for (i = 1; i <= n; i++) char *string'i' = malloc(STRSIZE * sizeof(char));
So it may not be created as string1, string2, string3, etc.
suggestions?
Edit: Is that how malloc should be used for char string[STRSIZE]?
|
pointer pointer, same thing as an array pointers or array of arrays. In c, you can think of an array as the same thing as a pointer - foo[5] is just a fancy way of writing *(foo + 5). Sort of...
(syntax may not be exact, take with grain of salt and run through gcc to find my obvious fuckups):
char **my_strings; int n; // sometime later n = 5 I guess? You weren't clear on that but w/e
my_strings = (char **) malloc(n * sizeof(char *));
for (int i = 1; i < n; ++i) { my_strings[i] = (char *) malloc(STRSIZE * sizeof(char)); }
|
Hey guys! I need a little help in Java. I'm trying to convert a String to specific ints. It has to do with a card game, so I have face values 2-10, jack, queen, king, ace. I'm using a method called getface(): and I can print out the face values fine, but I need to convert them to ints in order to compare them easier in order to determine the winner of a hand.
I've tried: Switch statements (only to find out that you can't use case 'Ace': faceValue = 14;...apparently it only works with ints!) If statements (doesn't work, it won't let me force the switch) Integer.parseInt(string) (doesn't work, it throws a bunch of errors)
Is there another way to convert the face value from a String to it's equivalent int?
|
On February 23 2013 01:49 ranshaked wrote: Hey guys! I need a little help in Java. I'm trying to convert a String to specific ints. It has to do with a card game, so I have face values 2-10, jack, queen, king, ace. I'm using a method called getface(): and I can print out the face values fine, but I need to convert them to ints in order to compare them easier in order to determine the winner of a hand.
I've tried: Switch statements (only to find out that you can't use case 'Ace': faceValue = 14;...apparently it only works with ints!) If statements (doesn't work, it won't let me force the switch) Integer.parseInt(string) (doesn't work, it throws a bunch of errors)
Is there another way to convert the face value from a String to it's equivalent int?
For the Strings that are numbers, you can use Integer.parse(). It will throw an exception for non integer values. However, I would suggest trying to use enums instead as you can use autocomplete in your IDE as well as give your code better structure.
Also, as of Java 7, you can use strings in switch statements. So, if you're allowed to upgrade to version 7, that would probably be the easiest.
|
On February 23 2013 01:49 ranshaked wrote: Hey guys! I need a little help in Java. I'm trying to convert a String to specific ints. It has to do with a card game, so I have face values 2-10, jack, queen, king, ace. I'm using a method called getface(): and I can print out the face values fine, but I need to convert them to ints in order to compare them easier in order to determine the winner of a hand.
I've tried: Switch statements (only to find out that you can't use case 'Ace': faceValue = 14;...apparently it only works with ints!) If statements (doesn't work, it won't let me force the switch) Integer.parseInt(string) (doesn't work, it throws a bunch of errors)
Is there another way to convert the face value from a String to it's equivalent int?
I only have c++ programming experience, but you could simply assign a value to a new variable for each card. For your if statements, if cardname = jack then cardnum = 11, if cardname = queen then cardnum = 12, and so on.
Forgive my ignorance though, but why can't you use an assignment statement like:
If I were doing this in c++ (again, never done anything in java)
void convertCardNums()
{
string cardValue;
if (cardValue = "1") cardValue = "01";
...
if (cardValue = "jack") cardValue = "11"; if (cardValue = "queen") cardValue = "12"; if (cardValue = "king") cardValue = "13";
}
|
On February 23 2013 01:49 ranshaked wrote: Hey guys! I need a little help in Java. I'm trying to convert a String to specific ints. It has to do with a card game, so I have face values 2-10, jack, queen, king, ace. I'm using a method called getface(): and I can print out the face values fine, but I need to convert them to ints in order to compare them easier in order to determine the winner of a hand.
I've tried: Switch statements (only to find out that you can't use case 'Ace': faceValue = 14;...apparently it only works with ints!) If statements (doesn't work, it won't let me force the switch) Integer.parseInt(string) (doesn't work, it throws a bunch of errors)
Is there another way to convert the face value from a String to it's equivalent int?
The performance of a system that has to use a switch statement every time you want to compare card values is going to be unnecessarily bad. This is a case where you don't want to use strings to store the card. Instead, use ints for all the cards, and only convert them to strings when you need to display it. :/
If you do it that way, you can simply use a single List with all the names of the strings in the correct index, so faceString[1] returns "Ace".
This would be more of a design issue/solution.
|
|
|
|
|
|