for語句輸出心形(java)的方法如下:
企業(yè)建站必須是能夠以充分展現(xiàn)企業(yè)形象為主要目的,是企業(yè)文化與產(chǎn)品對(duì)外擴(kuò)展宣傳的重要窗口,一個(gè)合格的網(wǎng)站不僅僅能為公司帶來巨大的互聯(lián)網(wǎng)上的收集和信息發(fā)布平臺(tái),成都創(chuàng)新互聯(lián)面向各種領(lǐng)域:展覽展示等成都網(wǎng)站設(shè)計(jì)、成都全網(wǎng)營(yíng)銷推廣解決方案、網(wǎng)站設(shè)計(jì)等建站排名服務(wù)。
使用eclipse,創(chuàng)建一個(gè)Java文件命名為Test.java
2.系統(tǒng)自動(dòng)建立Test類及主函數(shù)。
3.輸入以下代碼:
public class Test{
public static void main (String []args){
int k=5; ? ? ?//控制心型大小
for ( int i=0;i=k*2;i++){
for (int j=0;j=k*4;j++){
if (((i-k)*(i-k)+(j-k)*(j-k)==k*ki=k )||( (j-3*k)*(j-k*3)+(i-k)*(i-k)==k*ki=k)
||(((2*k-i)-2*k)*((2*k-i)-2*k)+(j-2*k)*(j-2*k)==k*k*4 ) )
{ if (i==0j==0||i==0j==k*4) System.out.print(" ");
else { ?System.out.print("*");}
}
else System.out.print(" ");
}
System.out.println();
}
}
}
4.保存并運(yùn)行程序
擴(kuò)展資料:
for 語句表達(dá)式:
表達(dá)式1:一般為賦值表達(dá)式,給控制變量賦初值;
表達(dá)式2:關(guān)系表達(dá)式或邏輯表達(dá)式,循環(huán)控制條件;
表達(dá)式3:一般為賦值表達(dá)式,給控制變量增量或減量。
用方程的話肯定輸出不會(huì)和你的圖完全一致
心形線方程如圖
用上面行第二個(gè)比較簡(jiǎn)單,程序如下
#include?stdio.h
bool?draw(float?x,?float?y)
{
float?a?=?x?*?x?+?y?*?y?-?1.0;
float?b?=?x?*?x?*?y?*?y?*?y;
return?a?*?a?*?a?-?b?=?0;
}
int?main(int?argc,?char*?argv[])
{
for?(float?y?=?1.5;?y?=?-1.5;?y?-=?0.1)
{
for?(float?x?=?-1.2;?x?=?1.2;?x?+=?0.05)
{
if?(draw(x,?y))
{
bool?left?=?draw(x?-?0.05,?y);
bool?right?=?draw(x?+?0.05,?y);
bool?up?=?draw(x,?y?+?0.1);
bool?down?=?draw(x,?y?-?0.1);
if?(left??right??up??down)
printf("?");
else
printf("*");
}
else
printf("?");
}
printf("\n");
}
return?0;
}
draw函數(shù)是判斷(x,y)坐標(biāo)是否在心形范圍內(nèi)
主函數(shù)循環(huán),y取值±1.5之間,步長(zhǎng)0.1,x取值±1.2之間,步長(zhǎng)0.05
如果(x,y)坐標(biāo)在心形范圍外打印空格
如果(x,y)坐標(biāo)在心形范圍內(nèi),由于這個(gè)心是空心的,要繼續(xù)判斷是不是心形邊緣,判斷周圍4個(gè)點(diǎn)坐標(biāo),如果都在范圍內(nèi),表示(x,y)坐標(biāo)不會(huì)是邊緣,打印空格,否則是邊緣,打印星號(hào)
最終結(jié)果如圖
把如下代碼加入body區(qū)域中
style type="text/css"
body
{
background-color:#FFFFFF;
font-family: Arial;
font-size:10pt;
}
/style
script
text=new Array('www','njcatv','net','需要放大的
/\/\
\ /
\/
文字')
var numText=4
color=new Array('#000000','#2F2F2F','#4F4F4F','#7F7F7F','#408080')
var numColors=5
var endSize=70
var Zspeed=30
var Cspeed=200
var font='Arial Black'
var hide=false
var size=10
var gonum=0
var ie, n;
if (document.all) {
n=0
ie=1
zoomText='document.all.zoom.innerText=text[num]'
zoomSize='document.all.zoom.style.fontSize=size'
closeIt=""
fadeColor="document.all.zoom.style.color=color[num]"
}
if (document.layers) {
n=1;ie=0
zoomText=""
zoomSize="document.zoom.document.write('p align=\"center\" style=\"font-family:'+font+'; font-size:'+size+'px; color:'+color[0]+'\"'+text[num]+'/p')"
closeIt="document.zoom.document.close()"
fadeColor="document.zoom.document.write('p align=\"center\" style=\"font-family:'+font+'; font-size:'+endSize+'px; color:'+color[num]+'\"'+text[numText-1]+'/p')"
}
function zoom(num,fn){
if (sizeendSize){
eval(zoomText)
eval(zoomSize)
eval(closeIt)
size+=5;
setTimeout("zoom("+num+",'"+fn+"')",Zspeed)
}else{
eval(fn);
}
}
function fadeIt(num){
if (numnumColors){
eval(fadeColor)
eval(closeIt)
num+=1;
setTimeout("fadeIt("+num+")",Cspeed)
}else{
hideIt()
}
}
function hideIt(){
if(hide){
if(ie)document.all.zoom.style.visibility="hidden"
if(n)document.layers.zoom.visibility="hidden"
}
}
function init(){
if(ie){
document.all.zoom.style.color=color[0]
document.all.zoom.style.fontFamily=font
}
if(ie || n) go(0)
}
function go(num){
gonum+=1
size=10
if(numnumText){
zoom(num,'go('+gonum+')')
}else{
fadeIt(0)
}
}
/script
div id="zoom" align="center" style="position:absolute; top:150"
分析:
1.首先愛心分成兩半前面三行左右一樣右邊就可以通過左邊反相得到
中間兩行是個(gè)長(zhǎng)方形,剩下的就是個(gè)倒等腰三角形
2.在或者,長(zhǎng)得不太像- -
System.out.println(" ** **");
for (int i = 4; i 10; i++) {
for (int a = 0; a i; a++) {
System.out.print(" ");
}
for (int b = 1; b = 2 * 9 - 2 * i - 1; b++) {
System.out.print("*");
}
System.out.print("\n");
}
** **
*********
*******
*****
***
*
package com.zeph.j2se.alg;
public class Heart {
int HighLevel(int wide) {
int i = 0, j = 0, k = 0, t = 0, m = 0, n = 0, count = 1;// i控制循環(huán)內(nèi)高度,j控制每行前面空格,k控制輸出的*數(shù)
// t控制高層星號(hào)中間空格,m記錄高層最底行的星數(shù),以下逐行增4
// n記錄頂行空個(gè)數(shù),以下逐行減4;count記錄高層高度,與high無關(guān)
m = (wide - 4) / 2;
do {
count++;
m -= 4;
} while (m 4);
if ((wide - 4) % 2 == 0)// 區(qū)別對(duì)待奇偶寬度,奇數(shù)中間最小空1個(gè),偶數(shù)最小空兩個(gè)
{
n = 2 + 4 * (count - 1);
m--;
} else
n = 1 + 4 * (count - 1);
for (i = 0; i count; i++) {
for (j = (count - i) * 2; j 0; j--)
System.out.print(" ");
for (k = 0; k m; k++)
System.out.print("*");
for (t = 0; t n; t++)
System.out.print(" ");
for (k = 0; k m; k++)
System.out.print("*");
m += 4;
n -= 4;
System.out.print("\n");
}
return 0;
}
int LowLevel(int wide) {
int i = 0, j = 0, k = 0;// i控制輸出行,j控制輸出每行前的空格,k控制輸出*
int high = 0, tmp = wide;
do// 計(jì)算所需高度
{
high++;
tmp -= 4;
} while (tmp 4);
high += 1;
for (i = 0; i high; i++) {
for (j = 0; j 2 * i; j++)
System.out.print(" ");
for (k = wide - 4 * i; k 0; k--)
System.out.print("*");
System.out.print("\n");
}
return 0;
}
public static void main(String[] args) {
int wide = 30;
Heart heart = new Heart();
heart.HighLevel(wide);
heart.LowLevel(wide);
}
}
湊合著看吧,剛實(shí)現(xiàn)了一個(gè),代碼如下:
public class Test {
public static void main(String args[]) {
System.out.println("this is XX!");
System.err.println(" ** ** ");
System.err.println(" ** ** ** ** ");
System.err.println(" ** ** ** ");
System.err.println(" ** ** ");
System.err.println(" ** ** ");
System.err.println(" ** ** ");
System.err.println(" ** ");
}
}
復(fù)制到百度里面有點(diǎn)亂,你要是會(huì)用MyEclipse的話直接Ctrl+Shift+F;
如果喜歡的話希望采納@~