473,766 Members | 2,023 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

My 3 sorting functions REDUX

Still have problems with this thing.

Seems my results are not matching the "correct" example given.
The three sets of numbers below the last 3 columns is suppose to be the
number of comparisons made by eahc sorting function.

I have having trouble getting the number of comparisons to match. One
comment was that "the counts are in the wrongs place," but I have moved them
all over the function and still they do not match.

Thanks to all have given advice so far.
Trent

Output and code below:

=============== ="CORRECT" OUTPUT========= ===

Unsorted List Bubble Sorted Insertion Sorted Selection Sorted

678 678 678 678
850 850 850 850
999 999 999 999
1050 1050 1050 1050
1222 1222 1222 1222
1325 1325 1325 1325
1444 1444 1444 1444
1600 1600 1600 1600
1900 1900 1900 1900
1900 1900 1900 1900

9 9 45

Unsorted List Bubble Sorted Insertion Sorted Selection Sorted

1600 231 231 231
1444 231 231 231
1325 678 678 678
1222 850 850 850
1050 999 999 999
999 1050 1050 1050
850 1222 1222 1222
678 1325 1325 1325
231 1444 1444 1444
231 1600 1600 1600

81 45 45

Unsorted List Bubble Sorted Insertion Sorted Selection Sorted

1444 678 678 678
850 850 850 850
999 999 999 999
678 1050 1050 1050
1222 1050 1050 1050
1050 1222 1222 1222
1325 1325 1325 1325
1600 1444 1444 1444
1900 1600 1600 1600
1050 1900 1900 1900

54 21 45

Unsorted List Bubble Sorted Insertion Sorted Selection Sorted

999 231 231 231
850 231 231 231
678 678 678 678
231 850 850 850
1222 999 999 999
1325 1222 1222 1222
1444 1325 1325 1325
1600 1444 1444 1444
1900 1600 1600 1600
231 1900 1900 1900

81 20 45

Unsorted List Bubble Sorted Insertion Sorted Selection Sorted

850 231 231 231
999 678 678 678
1050 850 850 850
1222 999 999 999
1325 1050 1050 1050
1444 1222 1222 1222
1600 1325 1325 1325
1900 1444 1444 1444
678 1600 1600 1600
231 1900 1900 1900

90 24 45
=============== =MY OUTPUT========= =======
Unsorted List Bubble Sorted Selection Sorted Insertion Sorted
231 231 231 231
678 678 678 678
850 850 850 850
999 999 999 999
1050 1050 1050 1050
1222 1222 1222 1222
1325 1325 1325 1325
1444 1444 1444 1444
1600 1600 1600 1600
1900 1900 1900 1900

Number: 9 9 9

Unsorted List Bubble Sorted Selection Sorted Insertion Sorted
1900 231 231 231
1600 678 678 678
1444 850 850 850
1325 999 999 999
1222 1050 1050 1050
1050 1222 1222 1222
999 1325 1325 1325
850 1444 1444 1444
678 1600 1600 1600
231 1900 1900 1900

Number: 18 18 18

Unsorted List Bubble Sorted Selection Sorted Insertion Sorted
231 231 231 231
1444 678 678 678
850 850 850 850
999 999 999 999
678 1050 1050 1050
1222 1222 1222 1222
1050 1325 1325 1325
1325 1444 1444 1444
1600 1600 1600 1600
1900 1900 1900 1900

Number: 27 27 27

Unsorted List Bubble Sorted Selection Sorted Insertion Sorted
1050 231 231 231
999 678 678 678
850 850 850 850
678 999 999 999
231 1050 1050 1050
1222 1222 1222 1222
1325 1325 1325 1325
1444 1444 1444 1444
1600 1600 1600 1600
1900 1900 1900 1900

Number: 36 36 36

Unsorted List Bubble Sorted Selection Sorted Insertion Sorted
231 231 231 231
850 678 678 678
999 850 850 850
1050 999 999 999
1222 1050 1050 1050
1325 1222 1222 1222
1444 1325 1325 1325
1600 1444 1444 1444
1900 1600 1600 1600
678 1900 1900 1900

Number: 45 45 45


=============== =CODE========== ======

#include <iostream>
#include <fstream>
#include<iomani p>
#include<cstdli b>

using namespace std;
void bubbleSort(int array[], int, int &); //function prototypes
void selectionSort(i nt [], int, int &);
void insertionSort(i nt [], int, int &);
void swap(int &, int &);
void print(int array[], int size, int bubbleSort[], int selectionSort[], int
insertionSort[], int bcount, int scount, int icount);
// print(&numArray , arraySize, &bsort, &ssort, &isort,
bsortCounter,sS ortCounter, iSortCounter);

ifstream inFile;
ofstream outFile;

int main()
{

const int arraySize = 10;
int numArray[arraySize];
int bsort[arraySize];
int bsortCounter =0;
int isort[arraySize];
int iSortCounter =0;
int ssort[arraySize];
int sSortCounter =0;
// each sort needs array and counter (parallel arrays)
inFile.open("in put.txt"); //opening input file
if (!inFile)
{
cerr << "Error Opening File" << endl;
system("pause") ;
EXIT_FAILURE; //stop program on failure
}
for (int i =0;i < 5;i++)
{
for (int j=0; j< arraySize;j++)
{
inFile >numArray[j];
bsort[j]=numArray[j];
isort[j]=numArray[j];
ssort[j]=numArray[j];
}

cout << endl;
bubbleSort(bsor t, arraySize, bsortCounter);// call the sort functions
selectionSort(s sort, arraySize,sSort Counter);
insertionSort(i sort, arraySize,iSort Counter);

print(numArray, arraySize, bsort, ssort, isort, bsortCounter,sS ortCounter,
iSortCounter);\

}

cout << endl;
system("pause") ;

inFile.close();// close files
outFile.close() ;
return 0;
}

// Funtions below


void bubbleSort(int array[], int size, int &count)
{
int i, pass, flag;
for (pass =0; pass < size - 1; pass++) //# of passes
{
for (i= 0; i < size - 1; i++) // one pass
{

if (array[i] array[i+1]) //one comparison
{

swap(array[i], array[i+1]); //one swap
}
}count++;
}
}// end of bubble Sort function
void selectionSort(i nt array[], int size, int &count)
{
int i, j, tmp;
for (i = 0; i < size - 1; i++)
{
tmp = i;
count = count++;
for (j = i+1; j < size; j++)
if (array[j] < array[tmp])
{
tmp = j;
}

swap(array[i], array[tmp]); //call swap funtion

}
}//end of selection sort function

void insertionSort(i nt array[],int size, int &count)
{
int tmp,i;
for(int j=1;j<size;j++)
{
tmp=array[j];
i=j-1;
while(i>=0 && array[i]>tmp)

{

array[i+1]=array[i];

i--;

}
array[i+1]=tmp;
count++;
}
}
void print(int array[], int size, int bubbleSort[], int selectionSort[], int
insertionSort[], int bcount, int scount, int icount)
{
cout << " Unsorted List Bubble Sorted Selection Sorted Insertion
Sorted" << endl;

for (int k =0;k < size;k++)
cout << setw(15) <<array[k] << setw(16) << bubbleSort[k] << setw(20) <<
selectionSort[k] << setw(19) << insertionSort[k] << endl;
cout << endl << "Number: " << setw(23) <<bcount << setw(20)<<scoun t
<<setw(19)<< icount << endl;

}// end of print function

void swap(int &element1, int &element2)
{
int tmp = element1;
element1 = element2;
element2 = tmp;
}

Jul 4 '07 #1
4 1711
Trent wrote:
Still have problems with this thing.

Seems my results are not matching the "correct" example given.
The three sets of numbers below the last 3 columns is suppose to be the
number of comparisons made by eahc sorting function.

I have having trouble getting the number of comparisons to match. One
comment was that "the counts are in the wrongs place," but I have moved
them all over the function and still they do not match.
If you take advantage of the fact that ints can be converted to bools, you
can move the incrementation of the count into the comparisons. If the
comparison was

array[i] < array[i + 1]

you could say

++count && array[i] < array[i + 1]

If count was initialised to 0, the expression ++count would always compare
true, and the && operator would always return the old comparison. This
would always work, but to solve your problem, try to hand trace the code
for a small input sample. Use a piece of paper, and write down the values
in your variables, and keep track of the changes made in each statement.
Output and code below:
[snip output]
>
#include <iostream>
#include <fstream>
#include<iomani p>
#include<cstdli b>

using namespace std;
void bubbleSort(int array[], int, int &); //function prototypes
void selectionSort(i nt [], int, int &);
void insertionSort(i nt [], int, int &);
void swap(int &, int &);
void print(int array[], int size, int bubbleSort[], int selectionSort[],
int insertionSort[], int bcount, int scount, int icount);
// print(&numArray , arraySize, &bsort, &ssort, &isort,
bsortCounter,sS ortCounter, iSortCounter);

ifstream inFile;
ofstream outFile;

int main()
{

const int arraySize = 10;
int numArray[arraySize];
int bsort[arraySize];
int bsortCounter =0;
int isort[arraySize];
int iSortCounter =0;
int ssort[arraySize];
int sSortCounter =0;
// each sort needs array and counter (parallel arrays)
inFile.open("in put.txt"); //opening input file
if (!inFile)
{
cerr << "Error Opening File" << endl;
system("pause") ;
EXIT_FAILURE; //stop program on failure
}
for (int i =0;i < 5;i++)
{
for (int j=0; j< arraySize;j++)
{
inFile >numArray[j];
bsort[j]=numArray[j];
isort[j]=numArray[j];
ssort[j]=numArray[j];
}

cout << endl;
bubbleSort(bsor t, arraySize, bsortCounter);// call the sort functions
selectionSort(s sort, arraySize,sSort Counter);
insertionSort(i sort, arraySize,iSort Counter);

print(numArray, arraySize, bsort, ssort, isort, bsortCounter,sS ortCounter,
iSortCounter);\

}

cout << endl;
system("pause") ;

inFile.close();// close files
outFile.close() ;
return 0;
}

// Funtions below


void bubbleSort(int array[], int size, int &count)
{
int i, pass, flag;
for (pass =0; pass < size - 1; pass++) //# of passes
{
for (i= 0; i < size - 1; i++) // one pass
{

if (array[i] array[i+1]) //one comparison
{

swap(array[i], array[i+1]); //one swap
}
}count++;
}
}// end of bubble Sort function
Here, you have the comparison inside the inner loop, but your count
increment is outside it.
void selectionSort(i nt array[], int size, int &count)
{
int i, j, tmp;
for (i = 0; i < size - 1; i++)
{
tmp = i;
count = count++;
Here, you are modifying count twice in the same statement. This is undefined
behaviour. Read this:

http://www.parashift.com/c++-faq-lit...html#faq-39.15

Undefined behaviour means anything could happen, but the likely results
right here is that 1) count stays the same and 2) count is incremented.
Different compilers and/or compiler settings may give different results.
Most compilers should be able to warn you about this, however.
for (j = i+1; j < size; j++)
if (array[j] < array[tmp])
{
tmp = j;
}

swap(array[i], array[tmp]); //call swap funtion

}
}//end of selection sort function

void insertionSort(i nt array[],int size, int &count)
{
int tmp,i;
for(int j=1;j<size;j++)
{
tmp=array[j];
i=j-1;
while(i>=0 && array[i]>tmp)

{

array[i+1]=array[i];

i--;

}
array[i+1]=tmp;
count++;
}
}
void print(int array[], int size, int bubbleSort[], int selectionSort[],
int insertionSort[], int bcount, int scount, int icount)
{
cout << " Unsorted List Bubble Sorted Selection Sorted
Insertion
Sorted" << endl;

for (int k =0;k < size;k++)
cout << setw(15) <<array[k] << setw(16) << bubbleSort[k] << setw(20)
<<
selectionSort[k] << setw(19) << insertionSort[k] << endl;
cout << endl << "Number: " << setw(23) <<bcount << setw(20)<<scoun t
<<setw(19)<< icount << endl;

}// end of print function

void swap(int &element1, int &element2)
{
int tmp = element1;
element1 = element2;
element2 = tmp;
}
--
rbh
Jul 4 '07 #2

"Robert Bauck Hamar" <ro**********@i fi.uio.nowrote in message
news:f6******** **@readme.uio.n o...
Trent wrote:
>Still have problems with this thing.

Seems my results are not matching the "correct" example given.
The three sets of numbers below the last 3 columns is suppose to be the
number of comparisons made by eahc sorting function.

I have having trouble getting the number of comparisons to match. One
comment was that "the counts are in the wrongs place," but I have moved
them all over the function and still they do not match.

If you take advantage of the fact that ints can be converted to bools, you
can move the incrementation of the count into the comparisons. If the
comparison was
I cannot do that. I must comply with the pseudo code
..
array[i] < array[i + 1]

you could say

++count && array[i] < array[i + 1]

If count was initialised to 0, the expression ++count would always compare
true, and the && operator would always return the old comparison. This
would always work, but to solve your problem, try to hand trace the code
for a small input sample. Use a piece of paper, and write down the values
in your variables, and keep track of the changes made in each statement.

I have gone over and over them and still do not match for reasons I do not
know.
Only thing I can think of is the two algorithihms are just not operating the
same.


>Output and code below:
[snip output]
>>
#include <iostream>
#include <fstream>
#include<ioman ip>
#include<cstdl ib>

using namespace std;
void bubbleSort(int array[], int, int &); //function prototypes
void selectionSort(i nt [], int, int &);
void insertionSort(i nt [], int, int &);
void swap(int &, int &);
void print(int array[], int size, int bubbleSort[], int selectionSort[],
int insertionSort[], int bcount, int scount, int icount);
// print(&numArray , arraySize, &bsort, &ssort, &isort,
bsortCounter,s SortCounter, iSortCounter);

ifstream inFile;
ofstream outFile;

int main()
{

const int arraySize = 10;
int numArray[arraySize];
int bsort[arraySize];
int bsortCounter =0;
int isort[arraySize];
int iSortCounter =0;
int ssort[arraySize];
int sSortCounter =0;
// each sort needs array and counter (parallel arrays)
inFile.open("in put.txt"); //opening input file
if (!inFile)
{
cerr << "Error Opening File" << endl;
system("pause") ;
EXIT_FAILURE; //stop program on failure
}
for (int i =0;i < 5;i++)
{
for (int j=0; j< arraySize;j++)
{
inFile >numArray[j];
bsort[j]=numArray[j];
isort[j]=numArray[j];
ssort[j]=numArray[j];
}

cout << endl;
bubbleSort(bso rt, arraySize, bsortCounter);// call the sort functions
selectionSort( ssort, arraySize,sSort Counter);
insertionSort( isort, arraySize,iSort Counter);

print(numArray , arraySize, bsort, ssort, isort,
bsortCounter,s SortCounter,
iSortCounter); \

}

cout << endl;
system("pause") ;

inFile.close();// close files
outFile.close() ;
return 0;
}

// Funtions below


void bubbleSort(int array[], int size, int &count)
{
int i, pass, flag;
for (pass =0; pass < size - 1; pass++) //# of passes
{
for (i= 0; i < size - 1; i++) // one pass
{

if (array[i] array[i+1]) //one comparison
{

swap(array[i], array[i+1]); //one swap
}
}count++;
}
}// end of bubble Sort function

Here, you have the comparison inside the inner loop, but your count
increment is outside it.
Yes. I was still playing around. I now have all count++ with the swaps.
In addtion I must change part of the code. Notice in main() I am
making a copy of the array that read read in from the file into other
arrays.
The change I must make is to doing to copying from inside each function.

That is the part that is confusing me.
My thinking is I have to make yet another array and pass numArray to the
function then copy the pass to the inside array.
Did not work.

Suggestions?

Thanks for the assistance you have given.

Trent
The newest code below:

#include <iostream>
#include <fstream>
#include<iomani p>
#include<cstdli b>

using namespace std;
void bubbleSort(int array[], int, int &); //function prototypes
void selectionSort(i nt [], int, int &);
void insertionSort(i nt [], int, int &);
void swap(int &, int &);
void print(int array[], int size, int bubbleSort[], int selectionSort[], int
insertionSort[], int bcount, int scount, int icount);
// print(&numArray , arraySize, &bsort, &ssort, &isort,
bsortCounter,sS ortCounter, iSortCounter);

ifstream inFile;
ofstream outFile;

int main()
{

const int arraySize = 10;
int numArray[arraySize];
int bsort[arraySize];
int bsortCounter =0;
int isort[arraySize];
int iSortCounter =0;
int ssort[arraySize];
int sSortCounter =0;
// each sort needs array and counter (parallel arrays)
inFile.open("in put.txt"); //opening input file
if (!inFile)
{
cerr << "Error Opening File" << endl;
system("pause") ;
EXIT_FAILURE; //stop program on failure
}

outFile.open("o utput.txt"); //opening input file
if (!outFile)
{
cerr << "Error Opening File" << endl;
system("pause") ;
EXIT_FAILURE; //stop program on failure
}

for (int i =0;i < 5;i++)
{
for (int j=0; j< arraySize;j++)
{
inFile >numArray[j];
bsort[j]=numArray[j];
isort[j]=numArray[j];
ssort[j]=numArray[j];
}

cout << endl;
bubbleSort(bsor t, arraySize, bsortCounter);// call the sort functions
selectionSort(s sort, arraySize,sSort Counter);
insertionSort(i sort, arraySize,iSort Counter);

print(numArray, arraySize, bsort, ssort, isort, bsortCounter,sS ortCounter,
iSortCounter);\

}

cout << endl;

inFile.close();// close files
outFile.close() ;

system("pause") ;
return EXIT_SUCCESS;
}

// Funtions below

void bubbleSort(int array[], int size, int &count)
{
int i, pass;
for (pass =0; pass < size - 1; pass++) //# of passes
{
for (i= 0; i < size - 1; i++) // one pass
{

if (array[i] array[i+1]) //one comparison
{
count++;
swap(array[i], array[i+1]); //one swap and call swap
function
}
}
}
}// end of bubble Sort function
void selectionSort(i nt array[], int size, int &count)
{
int i, j, tmp;
for (i = 0; i < size - 1; i++)
{
tmp = i;

for (j = i+1; j < size; j++)
{

if (array[j] < array[tmp])
{

tmp = j;
}

}
swap(array[i], array[tmp]); //call swap funtion
count++;
}
}//end of selection sort function

void insertionSort(i nt array[],int size, int &count)
{
int tmp,i;
for(int j=1;j<size;j++)
{
tmp=array[j];
i=j-1;
while(i>=0 && array[i]>tmp)

{

array[i+1]=array[i];

i--;

}
array[i+1]=tmp;
count++;
}
}
void print(int array[], int size, int bubbleSort[], int selectionSort[], int
insertionSort[], int bcount, int scount, int icount)
{
cout << " Unsorted List Bubble Sorted Selection Sorted Insertion
Sorted" << endl;

for (int k =0;k < size;k++)
cout << setw(15) <<array[k] << setw(16) << bubbleSort[k] << setw(20) <<
selectionSort[k] << setw(19) << insertionSort[k] << endl;
cout << endl << "Number: " << setw(23) <<bcount << setw(20)<<scoun t
<<setw(19)<< icount << endl;

}// end of print function

void swap(int &element1, int &element2)
{
int tmp = element1;
element1 = element2;
element2 = tmp;
}
Jul 5 '07 #3

Trent <tr***@nerd.com wrote in message...
>
I have gone over and over them and still do not match for reasons I do not
know.
Only thing I can think of is the two algorithihms are just not operating
the
same.
[snip output]
Why didn't you remove the old code when you posted new code?
>
Yes. I was still playing around. I now have all count++ with the swaps.
In addtion I must change part of the code. Notice in main() I am
making a copy of the array that read read in from the file into other
arrays.
The change I must make is to doing to copying from inside each function.

That is the part that is confusing me.
My thinking is I have to make yet another array and pass numArray to the
function then copy the pass to the inside array.
Did not work.
Suggestions?
Thanks for the assistance you have given.
Trent

The newest code below:

#include <iostream>
#include <fstream>
#include<iomani p>
#include<cstdli b>
using namespace std;
[ snip declarations ]
>
// ifstream inFile;
// ofstream outFile;
You only use these in main(), so move them there. [1]
>
int main(){

const int arraySize = 10;
int numArray[arraySize];
int bsort[arraySize];
int bsortCounter =0;
int isort[arraySize];
int iSortCounter =0;
int ssort[arraySize];
int sSortCounter =0;
// each sort needs array and counter (parallel arrays)
// inFile.open("in put.txt"); file://opening input file

ifstream inFile("input.t xt"); file://opening input file
if (!inFile){
cerr << "Error Opening File" << endl;
system("pause") ;
// EXIT_FAILURE; file://stop program on failure
return EXIT_FAILURE; file://stop program on failure
}
// outFile.open("o utput.txt"); file://opening input file

ofstream outFile("output .txt"); file://opening input file
if (!outFile){
cerr << "Error Opening File" << endl;
system("pause") ;
// EXIT_FAILURE; file://stop program on failure
return EXIT_FAILURE; file://stop program on failure
}

for (int i =0;i < 5;i++){
for (int j=0; j< arraySize;j++){
inFile >numArray[j];
bsort[j]=numArray[j];
isort[j]=numArray[j];
ssort[j]=numArray[j];
}

cout << endl;
bubbleSort(bsor t, arraySize, bsortCounter);// call the sort functions
selectionSort(s sort, arraySize,sSort Counter);
insertionSort(i sort, arraySize,iSort Counter);

print(numArray, arraySize, bsort, ssort, isort, bsortCounter,sS ortCounter,
iSortCounter);\
}
cout << endl;
inFile.close();// close files
outFile.close() ;
system("pause") ;
return EXIT_SUCCESS;
} // main()
>
// Funtions below

void bubbleSort(int array[], int size, int &count){
// int i, pass;
// for (pass =0; pass < size - 1; pass++) file://# of passes

// This is 'C' style code. You do not use 'pass' or 'i' outside the
// for loop, so do it like this (same in your other functions):

for( int pass(0); pass < size - 1; ++pass ) file://# of passes
{
// for (i= 0; i < size - 1; i++) // one pass
for( int i(0); i < size - 1; ++i ) // one pass
{
if (array[i] array[i+1]) file://one comparison
{
count++;
swap(array[i], array[i+1]); file://one swap and call swap
function
}
}
}
}// end of bubble Sort function
[1] If you need to output to a file from a function outside main(), you can
do it like this:

void MyFunc( std::ostream &out ){
out<<"Hello World!"<<std::e ndl;
}

{ in main()
// open outFile
MyFunc( outFile );
MyFunc( std::cout ); // also works
}

--
Bob R
POVrookie
Jul 5 '07 #4
Trent wrote:
void bubbleSort(int array[], int size, int &count)
{
int i, pass, flag;
for (pass =0; pass < size - 1; pass++) //# of passes
{
for (i= 0; i < size - 1; i++) // one pass
Btw, note that after each pass the largest item will end up at
the end of the array. Thus it's useless to test the last item in
the array with the second-to-last. In the second pass you can loop
one less than in the first pass and still get a correct answer.
Likewise in the third pass you can loop one less than in the second
pass, and so on.

Not that it makes bubblesort any better, but...
Jul 6 '07 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
1777
by: praba kar | last post by:
Dear All, I am new to Python. I am in need of some sorting functions (eg) numerical sorting functions and alphapetical sorting functions. I have searched through net But I cannot find any regarding this so If anyone know regarding this. Kindly mail me as early as possible with regards
1
1959
by: Sue | last post by:
Anyone have any ideas on why the code below will show up in a browser's sourcecode as an empty table, and is not visible? aspx: <headertemplate> <asp:Table ID="MyTable" runat="server" /> </headertemplate>
4
2545
by: John Bullock | last post by:
Hello, I am at wit's end with an array sorting problem. I have a simple table-sorting function which must, at times, sort on columns that include entries with nothing but a space (@nbsp;). I want all of the spaces to be put in the first slots of the array. IE 6 does this. But Firefox 0.9.1 doesn't, and I don't know why. I have not been able to reproduce it in very simple form (which is itself a puzzle). But example code is...
22
4168
by: mike | last post by:
If I had a date in the format "01-Jan-05" it does not sort properly with my sort routine: function compareDate(a,b) { var date_a = new Date(a); var date_b = new Date(b); if (date_a < date_b) { return -1; } else
7
3050
by: Karin Jensen | last post by:
Hi I am running a PHP program that connects to an Access 2000 database via ODBC: $results = odbc_exec($connection_id, $sql_select); Is it possible to sort the contents of $results? I wish to use a regex-based sort order that you can't do in Access 2000* SQL with "ORDER BY".
8
3538
by: Mike MacSween | last post by:
tblCourses one to many to tblEvents. A course may have an intro workshop (a type of event), a mid course workshop, a final exam. Or any combination. Or something different in the future. At the moment the printed output is usually going to Word. It's turning into an unholy mess, because I'm having to prepare umpteen different Word templates, and the queries that drive them, depending on what events a course has.
4
2353
by: Mark Travis | last post by:
Hi all, I have written a simple Web Application that displays a query result onto a page using the ASP DataGrid. To Digress ======= Development information about the page is as follows 1. The database used is SqlServer 2000. 2. A Stored Procedure is dragged onto the page from the Server Explorer
3
7346
KevinADC
by: KevinADC | last post by:
If you are entirely unfamiliar with using Perl to sort data, read the "Sorting Data with Perl - Part One and Two" articles before reading this article. Beginning Perl coders may find this article uses unfamiliar terms and syntax. Intermediate and advanced Perl coders should find this article useful. The object of the article is to inform the reader, it is not about how to code Perl or how to write good Perl code, but to teach the Schwartzian...
2
2261
by: Bob Laubla | last post by:
Hello I have a very complex maketable query with many records and involving multiple VB functions which call other functions. I need this table to be sorted by the first field. But no matter what I do, there is a small chance of the table coming out unsorted. I have tried sorting it with the 'make table' query. I have tried sorting it with Word during output (my current configuration runs 4 of these). I have tried reading it into an...
0
9568
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
10168
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
10008
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
9959
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
8833
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
7381
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5279
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
1
3929
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
3532
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.